网上的很多文档都有问题,所以决定自己写一篇
Centos7无图形静默安装 Oracle11g (11.2.0.2.0)
一:安装环境:
1.操作系统: CentOS Linux release 7.6.1810
2.数据库 oracle 11g 官方下载地址:
https://www.oracle.com/database/technologies/oracle-database-software-downloads.html#11g
oracle 11g 百度云下载地址
链接:https://pan.baidu.com/s/1zyKu74avVFIdAfpKxi0WIA
提取码:1noe
将linux86-64 2个文件一起下载下来(推荐使用迅雷下载)
3.将2个文件上传到服务器的/tmp目录下
二.开始安装
1.使用root用户登录操作系统
2.yum 安装 unzip 软件,用来解压上传的Oracle安装文件。
yum install unzip -y
cd /tmp
3.解压
unzip linux.x64_11gR2_database_1of2.zip && unzip linux.x64_11gR2_database_2of2.zip
等待解压完成后,会在/tmp目录下生产一个database文件夹,里面就Oracle 11g安装文件。
4.安装vim,方便文件编辑
yum install vim -y
5.关闭selinux
vim /etc/selinux/config
设置SELINUX=disabled
6.使命令生效
setenforce 0
7.关闭防火墙
service iptables stop
systemctl stop firewalld
systemctl disable firewalld
8.安装Oracle 11g依赖包
yum install yum install gcc make binutils gcc-c++ compat-libstdc++-33 elfutils-libelf-devel elfutils-libelf-devel-static ksh libaio libaio-devel numactl-devel sysstat unixODBC unixODBC-devel pcre-devel -y
9.添加安装用户和用户组(输入密码时必须是字符+数字+特殊字符,否则不通过)
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle
10.修改内核参数配置文件
vim /etc/sysctl.conf
11.使内核修改生效
sysctl -p
12.创建安装目录和设置文件权限
mkdir -p /u01/app/oracle/product/11.2.0
mkdir /u01/app/oracle/oradata
mkdir /u01/app/oracle/inventory
mkdir /u01/app/oracle/fast_recovery_area
chown -R oracle:oinstall /u01/app/oracle
chmod -R 775 /u01/app/oracle
13.设置oracle用户环境变量
su - oracle
vim .bash_profile
添加下面内容
ORACLE_BASE=/u01/app/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0
ORACLE_SID=orcl
PATH=$PATH:$ORACLE_HOME/bin
export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH
14.编辑静默安装响应文件
cp -R /tmp/database/response/ .
cd response/
vim db_install.rsp
需要编辑一下内容
oracle.install.option=INSTALL_DB_SWONLY
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/u01/app/oracle/inventory
SELECTED_LANGUAGES=en,zh_CN
ORACLE_HOME=/u01/app/oracle/product/11.2.0
ORACLE_BASE=/u01/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.DBA_GROUP=dba
oracle.install.db.OPER_GROUP=dba
DECLINE_SECURITY_UPDATES=true
15.根据响应文件静默安装Oracle 11g
cd /tmp/database/
./runInstaller -silent -responseFile /home/oracle/response/db_install.rsp -ignorePrereq
当出现下面的提示安装成功,安装的过程中可以去查看提示生成的log文件
16.在打开一个新终端,用root登录
sh /u01/app/oracle/inventory/orainstRoot.sh
sh /u01/app/oracle/product/11.2.0/root.sh
17.打开一个新终端用root登录,然后切换到oracle用户
su - oracle
netca /silent /responsefile /home/oracle/response/netca.rsp
成功运行后,在/u01/app/oracle/product/11.2.0/network/admin/中生成listener.ora和sqlnet.ora
18.以root用户打开个新终端安装 net-tools
yum install net-tools
安装好后可以运行下面命令来看1521端口已经启动
netstat -tnulp | grep 1521
19.以静默方式建立新库,同时也建立一个对应的实例,注意在设置密码时,不能使用特殊符号
vim /home/oracle/response/dbca.rsp
配置以下内容
GDBNAME = "orcl"
SID = "orcl"
SYSPASSWORD = "oracle"
SYSTEMPASSWORD = "oracle"
SYSMANPASSWORD = "oracle"
DBSNMPPASSWORD = "oracle"
DATAFILEDESTINATION =/u01/app/oracle/oradata
RECOVERYAREADESTINATION=/u01/app/oracle/fast_recovery_area
CHARACTERSET = "ZHS16GBK"
TOTALMEMORY = "3276"
其中TOTALMEMORY = "3276" 为3276MB,物理内存4G\*80%
注意:TOTALMEMORY 设置成3276后,虚拟机的物理内存至少为7个g,否则很容易无法启动,如下图,所以TOTALMEMORY的值 要根据自己实际的内存去分配
20.切换到刚在oralce用户终端
dbca -silent -responseFile /home/oracle/response/dbca.rsp
21.建库后进行实例进程检查
ps -ef | grep ora_ | grep -v grep
22.查看监听状态
lsnrctl status
23.登录查看实例状态
sqlplus / as sysdba
select status from v$instance;
退出
exit
三.设置开机启动
1.修改 /u01/app/oracle/product/11.2.0/bin路径下的dbstart dbshut脚本,将两个脚本中的ORACLE_HOME_LISTNER=$1,修改为ORACLE_HOME_LISTNER=$ORACLE_HOME
cd /u01/app/oracle/product/11.2.0/bin
2.修改/etc/oratab文件,将orcl:/u01/app/oracle/product/11.2.0:N中最后的N改为Y,成为orcl:/u01/app/oracle/product/11.2.0:Y
vim /etc/oratab
3.修改rc.local文件
chmod 755 /etc/rc.d/rc.local
vim /etc/rc.d/rc.local
在rc.local中添加:
su oracle -lc "/u01/app/oracle/product/11.2.0/bin/lsnrctl start" #加上引号才能把空格后的
su oracle -lc /u01/app/oracle/product/11.2.0/bin/dbstart
4.重启机器后执行
netstat -tpln
发现有1521监听端口存在,配置成功
四:登录
1.切换到oracle用户登录状态下
sqlplus / as sysdba
2.解除锁定
alter user SYSTEM account unlock;
这时候就可以用Navicat连接了
用户名:SYSTEM
密码:oracle
如果不能正确连接,改下密码试试
alter user system identified by 新密码
3.剩下的就是创建用户和表空间跟用户分配权限了,另外oracle11G 用户密码180天过期的问题,可以参考网上修改教程