CentOS7安装Oracle11g
- 下载yum包
- 更新RPM包
- 解压安装包至tmp目录
- 关闭selinux
- 关闭防火墙
- 创建Oracle用户
- 修改内核配置文件
- 创建安装目录和设置文件权限
- 设置环境变量
- 编辑静默安装响应文件
- 安装
- 打开一个新终端使用root用户登录
- 启动监听
- 建立数据库
- 进程查询
- 查看监听状态
- sqlplus登录
- 设置开机启动
- 重启服务
- 登录
下载yum包
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
更新RPM包
rpm -Uvh --force *.rpm
rpm:RPM软件包管理器命令。
-U:表示更新已安装的软件包,如果该软件包尚未安装,则安装它。
-v:表示在命令执行过程中显示详细信息。
-h:表示在安装过程中显示进度条。
--force:表示强制安装,即使存在冲突或错误也要继续安装。
*.rpm:表示在当前目录下安装或更新所有后缀为.rpm的软件包。
因此,这个命令将会在当前目录下安装或更新所有RPM软件包,并在安装过程中显示详细进度条信息,并且如果需要,会强制安装,即使存在冲突或错误也要继续安装。
解压安装包至tmp目录
cd /tmp
unzip linux.x64_11gR2_database_1of2_2.zip
unzip linux.x64_11gR2_database_2of2_2.zip
关闭selinux
vim /etc/selinux/config
#######################
SELINUX=disabled
这个命令是在Linux系统下使用vim编辑器打开/etc/selinux/config文件,该文件是SELinux的配置文件。SELinux是一种Linux内核安全模块,用于强化系统的安全性。这个命令将SELinux设置为disabled,即禁用SELinux。这样可以简化系统的配置和管理,但也会降低系统的安全性。如果系统需要更高的安全性,可以将SELinux设置为enforcing或permissive模式。编辑完成后,需要保存并退出vim编辑器。
在执行一下
setenforce 0
这个命令是在Linux系统下使用setenforce命令将SELinux的执行模式设置为permissive。permissive模式表示SELinux会记录违规行为,但不会阻止其发生,仅仅发出警告。这个命令常用于SELinux调试和排错,或者在需要暂时关闭SELinux时使用。如果需要永久关闭SELinux,应该修改/etc/selinux/config文件中的SELINUX参数为disabled并重启系统。
关闭防火墙
systemctl stop firewalld
创建Oracle用户
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle --密码设置为123456
这些命令的作用是创建两个组:oinstall和dba,然后创建一个用户oracle,将其添加到oinstall组中,同时也添加到dba组中。最后,为oracle用户设置密码。这些命令通常用于在Linux系统上安装和配置Oracle数据库。其中,oinstall组用于管理Oracle软件的安装和配置,而dba组用于管理Oracle数据库实例。
修改内核配置文件
vim /etc/sysctl.conf
内容如下:
vm.max_map_count = 655360
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 2147483648
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
这些是Linux系统内核参数的设置,通常用于优化Oracle数据库性能。其中,每个参数的作用如下:
vm.max_map_count:设置最大内存映射区域数量,建议设置为655360。
fs.aio-max-nr:设置系统异步IO操作的最大数量,建议设置为1048576。
fs.file-max:设置系统文件句柄的最大数量,建议设置为6815744。
kernel.shmall:设置系统共享内存区域的最大页数,建议设置为2097152。
kernel.shmmax:设置系统共享内存区域的最大大小,建议设置为2147483648。
kernel.shmmni:设置系统共享内存区域的最大数量,建议设置为4096。
kernel.sem:设置系统信号量的参数,包括信号量数量、信号量集数量、每个信号量集中的最大信号量数量和进程间通信的最大缓冲区大小。
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。
这些参数的设置可以根据具体情况进行调整,以达到最佳的Oracle数据库性能。
配置生效
sysctl -p
创建安装目录和设置文件权限
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
其中,/u01/app/oracle/product/11.2.0目录是Oracle软件的安装目录,
/u01/app/oracle/oradata目录是用于存储数据库文件的目录,
/u01/app/oracle/inventory目录是用于Oracle软件的安装和管理的目录,
/u01/app/oracle/fast_recovery_area目录是用于数据库备份和恢复的目录。
设置环境变量
最好使用oracle用户重新连接而不是 su切换用户
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
编辑静默安装响应文件
cp -R /tmp/database/response/ .
cd response/
vi db_install.rsp
需要编辑一下内容 可以使用查找命令 ‘:/oracle.install.option’
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
这些是Oracle数据库安装程序的一些参数配置,它们的含义如下:
oracle.install.option:指定了安装选项为仅安装数据库软件,而不安装数据库实例。
UNIX_GROUP_NAME:指定Oracle软件的操作系统组名为oinstall;
INVENTORY_LOCATION:指定Oracle Inventory的路径为/u01/app/oracle/inventory;
SELECTED_LANGUAGES:指定安装程序支持的语言为英语和简体中文;
ORACLE_HOME:指定Oracle软件的安装路径为/u01/app/oracle/product/11.2.0;
ORACLE_BASE:指定Oracle软件的基础路径为/u01/app/oracle;
oracle.install.db.InstallEdition:指定安装的Oracle数据库版本为企业版(EE);
oracle.install.db.DBA_GROUP:指定DBA组名为dba;
oracle.install.db.OPER_GROUP:指定操作员组名为dba;
DECLINE_SECURITY_UPDATES:拒绝安装安全补丁更新。
这些参数根据实际情况可以进行调整。
安装
使用的是oracle用户
cd /tmp/database/
./runInstaller -silent -responseFile /home/oracle/response/db_install.rsp -ignorePrereq
会出现以下提示
翻译后如下:
按提示继续操作
打开一个新终端使用root用户登录
执行以下命令
sh /u01/app/oracle/inventory/orainstRoot.sh
sh /u01/app/oracle/product/11.2.0/root.sh
再看刚才那个终端,安装已结束
启动监听
还是用oracle用户登录新终端
netca /silent /responsefile /home/oracle/response/netca.rsp
开启成功
建立数据库
vi /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"
这是一个Oracle数据库的参数配置文件,其中包括:
GDBNAME:数据库实例的全局名称。
SID:数据库实例的标识符。
SYSPASSWORD、SYSTEMPASSWORD、SYSMANPASSWORD、DBSNMPPASSWORD:分别是系统管理员、系统用户、EM Express管理员和SNMP用户的密码。
DATAFILEDESTINATION:数据文件的存储路径。
RECOVERYAREADESTINATION:恢复区的存储路径。
CHARACTERSET:数据库的字符集。
此外,这个配置文件采用了Linux系统的文件路径表示方式。
执行命令
dbca -silent -responseFile /home/oracle/response/dbca.rsp
进程查询
ps -ef | grep ora_ | grep -v grep
查看监听状态
lsnrctl status
sqlplus登录
sqlplus / as sysdba
设置开机启动
1.修改 /u01/app/oracle/product/11.2.0/bin/dbstart和/u01/app/oracle/product/11.2.0/bin/dbshut脚本,将两个脚本中的ORACLE_HOME_LISTNER=$1,修改为ORACLE_HOME_LISTNER=$ORACLE_HOME
2.修改/etc/oratab文件,将orcl:/u01/app/oracle/product/11.2.0:N中最后的N改为Y,成为orcl:/u01/app/oracle/product/11.2.0:Y
以root用户修改rc.local文件
chmod 755 /etc/rc.d/rc.local
vi /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
重启服务
dbstart
查看端口是否启动
netstat -nltp
登录
sqlplus / as sysdba
解除锁定
alter user SYSTEM account unlock;
设置 数据库最大连接
alter system set processes = 300 scope = spfile;
重启生效
dbstart
连接参数
- 服务名:ORCL
- 端口:1521
- 用户名:SYSTEM
- 密码:oracle