未特殊说明,操作用户即为root用户。
1、安装依赖包
yum -y install gcc gcc-c++ make binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel elfutils-libelf-devel-static glibc glibc-common glibc-devel ksh libaio libaio-devel libgcc libstdc++ libstdc++-devel numactl-devel sysstat unixODBC unixODBC-devel kernelheaders pdksh pcre-devel readline
2、创建用户组
groupadd oinstall
groupadd dba
3、创建用户并添加到用户组
useradd -g oinstall -G dba oracle
4、设置密码
echo "123456" | passwd --stdin oracle
5、创建安装目录及权限
mkdir -p /data/u01/app/oracle/product/11.2.0/dbhome_1
mkdir /data/u01/app/oracle/{oradata,inventory,fast_recovery_area}
chown -R oracle:oinstall /data/u01/app/oracle
chmod -R 775 /data/u01/app/oracle
6、静默安装Oracle11G数据库,上传数据库安装包并解压
6.1、创建一个目录存放安装包
mkdir -p /data/u01/software
6.2、将安装包(linux-64_1of7.zip,linux-64_2of7.zip)上传到software目录
cd /data/u01/software
unzip linux-64_1of7.zip
unzip linux-64_2of7.zip
解压完如下图所示:
6.3、修改配置文件
修改内核文件:
vim /etc/sysctl.conf
添加如下内容:
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 1073741824
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
kernel.msgmni = 1000
kernel.msgmax = 81920
kernel.msgmnb = 163840
保存后退出。
6.4、执行如下命令使配置生效
sysctl -p
6.5、修改用户限制
vim /etc/security/limits.conf
添加如下内容:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
保存后退出。
6.6、修改/etc/pam.d/login文件
vim /etc/pam.d/login
添加如下内容:
session required /lib64/security/pam_limits.so
session required pam_limits.so
保存后退出。
6.7、修改/etc/profile文件
vim /etc/profile
添加如下内容:
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
保存后退出。
7、设置oracle 用户环境变量
7.1、切换到oracle用户
su - oracle
7.2、编辑
cd ~
vim .bash_profile
添加如下内容:
export ORACLE_BASE=/data/u01/app/oracle
export ORACLE_HOME=/data/u01/app/oracle/product/11.2.0/dbhome_1
export ORACLE_SID=orcl
export ORACLE_UNQNAME=$ORACLE_SID
export PATH=$ORACLE_HOME/bin:$PATH
export NLS_LANG=american_america.AL32UTF8
#alias sqlplus='rlwrap sqlplus'
#alias rman='rlwrap rman'
并修改最后一行:
export PATH=$ORACLE_HOME/bin:$PATH
保存后退出。
7.3、执行如下命令使配置生效
source .bash_profile
7.4、修改静默安装响应文件
cp -r /data/u01/software/database/response/ /home/oracle
cd /home/oracle/response/
vim db_install.rsp
修改如下11个地方(注意不要修改错地方):
oracle.install.option=INSTALL_DB_SWONLY
ORACLE_HOSTNAME=自己的主机名
主机名查询方法:hostname -f
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/data/u01/app/oracle/inventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/data/u01/app/oracle/product/11.2.0/dbhome_1
ORACLE_BASE=/data/u01/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=dba
DECLINE_SECURITY_UPDATES=true
保存后退出。
保存后退出
执行以下命令
cd /data/u01/software/database/
./runInstaller -silent -responseFile /home/oracle/response/db_install.rsp -ignorePrereq
出现Successfully Setup Software后再执行以下操作
再开一个窗口,root用户操作,执行如下两个命令:
sh /data/u01/app/oracle/inventory/orainstRoot.sh
sh /data/u01/app/oracle/product/11.2.0/dbhome_1/root.sh
继续执行如下命令
sqlplus / as sysdba
注:出现该页面后,再执行接下来操作。
8、创建一个数据库实例
8.1、配置响应文件(oracle用户):
vim /home/oracle/response/dbca.rsp
修改如下9个地方(注意不要修改错地方。前面有注释的,一定要去掉“#”)
SID = "orcl"
SYSPASSWORD = "123456"
SYSTEMPASSWORD = "123456"
SYSMANPASSWORD = "123456"
DBSNMPPASSWORD = "123456"
DATAFILEDESTINATION =/data/u01/app/oracle/oradata
RECOVERYAREADESTINATION=/data/u01/app/oracle/fast_recovery_area
CHARACTERSET = "AL32UTF8"
TOTALMEMORY = "6144" (注意:此处数字依机器A物理内存而定,一般为物理内存的1.5-2倍,单位为MB。)
保存后退出。
8.2、检查配置(oracle用户):
egrep -v "(^#|^$)" /home/oracle/response/dbca.rsp
8.3、安装创建(oracle用户):
cd /data/u01/software/database/
dbca -silent -responseFile /home/oracle/response/dbca.rsp
8.4、查看默认实例(oracle用户):
env|grep ORACLE_UNQNAME
8.5、进入sqlplus 启动实例(oracle用户):
sqlplus / as sysdba
shutdown
startup
8.6、启动侦听器(oracle用户):
lsnrctl start
8.7、查看侦听器状态(oracle用户):
lsnrctl status
注:出现该页面后,再执行接下来操作。
9、oracle库和监听开机自启设置
9.1、添加信息格式(oracle用户):
vim /etc/oratab
如下图所示修改内容:
保存后退出。
root用户执行如下命令:
vim /etc/rc.d/rc.local
添加如下内容:
su - oracle -c "dbstart"
su - oracle -c "lsnrctl start"
su - oracle -c "lsnrctl start listenerl"
保存后退出。
root用户执行如下命令:
chmod +x /etc/rc.d/rc.local
sync
reboot
10、开放端口(root用户):
firewall-cmd --zone=public --add-port=1521/tcp --permanent
systemctl restart firewalld.service
11、修改oracle配置文件(root用户)
11.1、创建tnsnames.ora
vim /data/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora
添加如下内容:
ORCL =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ORCL)
)
)
保存后退出。
11.2、创建listener.ora
vim /data/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora
添加如下内容:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /data/u01/app/oracle/product/11.2.0/dbhome_1)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = ORCL)
(ORACLE_HOME = /data/u01/app/oracle/product/11.2.0/dbhome_1)
(SID_NAME = ORCL)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
)
保存后退出。
4.13连接测试
用数据库连接工具(以Navicat为例)
用户名:system
密码:123456
至此,oracle数据库已成功安装。



