Linux下Oracle数据库的安装
记录详细过程以备使用
一、准备安装
为了确保oracle数据库11g能够成功安装,您需要做好准备工作,例如检查网络配置、更改linux内核参数、创建用户oracle、创建安装目录、设置用户oracle的shell限制以及设置用户根的环境变量。
检查要安装的分区
本主题描述如何在安装oracle数据库之前检查分区
过程
步骤1.作为root用户登录到服务器。
步骤2.运行以下命令检查分区。
# df –h
- - - - -结束
检查网络配置
安装oracle数据库时,需要服务器的网络配置信息,例如服务器的ip地址和主机名。因此,在安装oracle数据库之前,请检查服务器的ip地址和主机名。
过程
步骤1.作为root用户登录到服务器。
步骤2.检查服务器的主机名。在终端窗口中,运行以下命令:
# hostname
系统显示服务器的主机名。
如果希望保留主机名,请记录主机名以备将来使用。l
步骤3.检查服务器的ip地址。
# ifconfig
- - - - -结束
更改linux内核参数
为了确保linux内核的参数满足安装要求,您需要更改linux内核配置。
上下文
安装oracle数据库11g对linux内核参数的要求如下:
fs.file-max = 512*processes
kernel.shmall = 4194304
kernel.shmmax = 4294967296
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144
过程
步骤1.作为root用户登录到服务器。
步骤2.打开/etc/sysctl.conf文件与vi编辑器。
# vi /etc/sysctl.conf
步骤3.使用向下箭头键将光标移动到文件的末尾。按o,然后在文件末尾添加以下信息。
fs.file-max = 6553600
kernel.shmall = 4194304
kernel.shmmax = 4294967296
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_max = 4194304
net.core.rmem_default = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144
注:shmmax可按以下方式设置:
值范围:
4gb - 1字节
内存大小的一半
shmmax所需的最小值是0.5 gb。但是,oracle建议您将shmmax的值设置为2.0 gb(即2147483648),以便优化oracle数据库的性能。
如果内存小于2.0gb,则将shmmax设置为内存大小的一半。
步骤4.按esc,输入:wq!,然后按enter保存并关闭/etc/sysctlconf文件。的/etc/sysctl.conf文件是一个只读文件,您需要使用:wq!命令保存文件。
步骤5.使更改的参数生效。
# /sbin/sysctl –p
步骤6.使系统访问/etc/sysctl.启动过程中的conf文件。
# /sbin/chkconfig boot.sysctl on
- - - - -结束
二、后续安装的过程
更改内核参数后,转到创建操作系统的用户oracle。
创建操作系统的用户oracle
在安装oracle数据库11g之前,需要创建安装和使用数据库所需的用户组和用户。
上下文
如果系统从未安装过oracle软件,则需要以下用户组和用户:
osdba组:dba
这个组标识具有数据库管理特权(sysdba特权)的用户帐户。这个组的默认名称是dba。
oracle库存组:oinstall
oracle库存组拥有操作所有oracle软件的权限。通常,这个组称为oinstall。
oracle软件所有者用户:oracle
该用户拥有甲骨文软件的全部权利。通常,用户的名字是oracle。该用户必须将oracle inventory组(oinstall)作为其主要组。它还必须将osdba组(dba)作为辅助组。
过程
步骤1.作为root用户登录到服务器。
步骤2.检查用户oracle是否存在。
# id oracle
如果显示以下信息,则表示用户oracle存在,但未设置用户oracle的辅助组。
uid=103(oracle) gid=103(oinstall) groups=103(oinstall),6(disk),104(dba)
将用户oracle更改为主组oinstall和辅助组dba。
# usermod -g oinstall -g dba -d /opt/oracle -s /bin/sh oracle
请注意
-g oinstall表示将用户oracle的主组设置为oinstall。
-g dba是指将用户oracle的辅助组设置为dba。
-d /opt/oracle表示将用户oracle的home路径设置为/opt/oracle。
-s /bin/sh表示将用户oracle的登录shell设置为/bin/sh
如果显示以下信息,则表示用户oracle不存在。
id: oracle: no such user
创建用户oracle。
# groupadd oinstall
# groupadd dba
# useradd -g oinstall -g dba -d /opt/oracle oracle
步骤3.设置用户oracle的密码。
# passwd oracle
显示以下信息。输入用户oracle的密码。
changing password for oracle.
new password:
- - - - -结束
后续的过程
创建所需的用户组和用于安装和使用数据库的用户成功后,转到创建用于安装oracle数据库的目录。
创建用于安装oracle数据库的目录
本主题描述如何创建用于安装oracle数据库的目录。
上下文
由于用户oracle对用户根创建的文件夹没有写权限,安装oracle数据库11g所需的文件夹必须由用户root创建。
如果安装oracle数据库11g所需的文件夹不是由用户oracle创建的,则将完全控制权限作为root用户授予用户oracle。
过程
步骤1.作为root用户登录到服务器。
步骤2.创建/opt/oracle目录。
# mkdir /opt/oracle
请注意
可能存在/opt/oracle目录。
步骤3.将/opt/oracle的所有者更改为用户oracle和用户组oinstall。
# chown oracle:oinstall /opt/oracle
步骤4.创建用于存储安装文件的/home/software目录。
# mkdir -p /home/software/
步骤5.将/home/software的所有者更改为用户oracle和用户组oinstall。
# chown -r oracle:oinstall /home/software
步骤6.将/oradata的所有者更改为用户oracle和用户组oinstall。
# chown -r oracle:oinstall /oradata
- - - - -结束
后续的过程
以二进制方式将oracle数据库的安装文件作为root用户文件上传到/home/software目录。
注意:以二进制模式将文件传输到服务器,否则文件可能被破坏。创建安装oracle数据库11g的目录后,转到为用户oracle设置shell限制。
为用户oracle设置shell限制
本主题描述如何为用户oracle设置shell限制。
过程
步骤1.作为root用户登录到服务器。
步骤2.编辑/etc/security/limits.conf文件。
1. 打开/etc/security/limits.conf文件与vi编辑器。
# vi /etc/security/limits.conf
2. 检查文件中是否存在以下信息。
如果不存在,则使用向下箭头键将光标移动到文件的末尾。按o,然后在文件末尾添加以下信息。
如果已经存在,请确保参数值满足以下要求。
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
3.按esc,回车:wq,回车保存文件,退出vi编辑器。
步骤3.编辑/etc/pam.d/login。
1.打开/etc/pam.d/login用vi编辑器登录文件。
# vi /etc/pam.d/login
2.检查文件中是否存在以下信息。
如果不存在,则使用向下箭头键将光标移动到文件的末尾。按o,然后在文件末尾添加以下信息。
如果已经存在,什么也不要做。
session required pam_limits.so
3.按esc,回车:wq,回车保存文件,退出vi编辑器。
步骤4.编辑/etc/profile文件。
1.使用vi编辑器打开/etc/profile文件。
# vi /etc/profile
2.使用向下箭头键将光标移动到文件的末尾。按o,然后在文件末尾添加以下信息。
if test $user = "oracle"; then
if test $shell = "/bin/ksh"; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi
3.按esc,回车:wq,回车保存文件,退出vi编辑器。
- - - - -结束
后续的过程
在成功设置用户oracle的shell限制之后,需要转到设置用户oracle的环境变量。
设置用户oracle的环境变量
本主题描述如何设置用户oracle的环境变量。
过程
步骤1.作为用户oracle登录到服务器。
步骤2.确保用户oracle的当前目录为/opt/oracle。
> pwd
显示的信息是当前目录。
/opt/oracle
步骤3.编辑.profile文件。
1.使用vi编辑器打开用户oracle的环境变量文件。
> vi .profile
2.检查文件中是否存在以下信息。
如果不存在,按o,然后在文件末尾添加以下信息。
如果已经存在,请确保参数值满足以下要求。
export oracle_sid=obd
export oracle_base=/opt/oracle/app/oracle
export oracle_home=$oracle_base/product/11.2.0/obd
export path=$oracle_home/bin:/usr/sbin:$path
export ld_library_path=$oracle_home/lib:/lib:/usr/lib
classpath=$oracle_home/jre:$oracle_home/jlib:$oracle_home/rdbms/jlib
path=$path:/$oracle_home/bin:$home/bin:
export classpath path
3.按esc,回车:wq,回车保存文件,退出vi编辑器。
步骤4使环境变量生效。
> source .profile
- - - - -结束
设置用户oracle的环境变量成功后,所有的安装准备工作就完成了。您可以开始安装oracle数据库11g。
安装oracle数据库
过程
步骤1.作为用户oracle登录到服务器。
步骤2.上传安装文件。
步骤3. go to the /home/software.
> cd /home/software/
步骤4.解压缩oracle数据库11g的安装包
> unzip linux.x64_11gr1_database.zip
步骤5.到目录中存储oracle database 11g的安装文件
> cd database
步骤6.设置显示器;否则系统无法显示用于安装的gui。
如果您通过远程工具执行安装,请运行以下命令:
> export display=10.110.1.101:0.0
请注意
10.110.1.101是您运行远程工具的计算机的ip地址。
0:0是远程工具使用的端口号。
如果在本地服务器上安装,则以用户oracle的身份登录到服务器(不要使用su - oracle命令切换到用户oracle),并运行以下命令设置本地服务器的显示:
> export display=:0.0
> xhost +
步骤7.启动oracle数据库11g安装程序。
> ./runinstaller
不再上图,可以网上查看具体细节。
后续的过程
为了确保oracle数据库实例可以连接到侦听器,必须创建网络配置文件tnsnames.ora。
配置oracle数据库侦听器。
过程
步骤1.作为用户oracle登录到服务器。
步骤2.创建tnsnames.ora文件。
> cd /opt/oracle/app/oracle/product/11.1.0/obd/network/admin/
> vi tnsnames.ora
请注意:
/opt/oracle/app/oracle/product/11.1.0/obd是oracle数据库11g的home路径。
步骤3.按o.将以下信息添加到tnsnames.ora文件。然后,将主机更改为服务器的实际ip地址或主机名。
请注意:
格式必须如下;否则,oracle数据库无法正确解析内容。
第一行前面没有添加空格。
必须在从第二行到最后一行的每一行前面添加空格。
等号(=)后必须加空格;否则,oracle数据库无法正确解析内容。
obd=
(description =
(address = (protocol = tcp)(host = 192.168.18.31)(port = 1521))
(connect_data =
(server = dedicated)
(service_name = obd)
)
)
obd = 本地连接的字符串。它可以包含任何字符。通常,它与oracle sid相同。
address = 侦听器的ip地址。
protocol =tcp 侦听器中使用的协议。
host =192.168.18.31 服务器的ip地址或主机名。
port = 1521 监听端口号。
server = 服务类型。
service_name = obd 在侦听器中注册的oracle数据库实例名。
步骤4.按esc,输入:wq,回车保存信息,退出vi编辑器。
请注意:
如果您输入:q!在vi编辑器中按enter键退出,文件将不会保存。
- - - - -结束
后续的过程
安装oracle数据库时,只安装数据库软件,不创建数据库实例。在这种情况下,您需要在安装之后创建一个数据库实例。
创建oracle数据库实例
不要通过telnet创建oracle数据库实例;否则,在安装过程中无法显示gui。
过程
步骤1.作为用户oracle登录到服务器。
步骤2.启动数据库侦听器。
> lsnrctl start
如果显示以下信息,则表示数据库侦听器已启动。
tns-01106: listener using listener name listener has already been started
如果显示以下信息,则表示数据库侦听器已成功启动。
the command completed successfully
步骤3.设置显示器;否则系统无法显示用于安装的gui。
如果您通过远程工具执行安装,请运行以下命令:
> export display=10.110.1.101:0.0
请注意
10.110.1.101是您运行远程工具的计算机的ip地址。
0:0是远程工具使用的端口号。
如果在本地服务器上安装,则以用户oracle的身份登录到服务器(不要使用su - oracle命令切换到用户oracle),并运行以下命令设置本地服务器的显示:
> export display=:0.0
> xhost +
步骤4.启动oracle数据库实例的配置程序。
> dbca
不再上图,可以网上查看具体细节。
后续的过程
为了方便使用oracle数据库,建议从操作系统开始设置oracle数据库。
将oracle数据库设置为从操作系统开始。
步骤1.作为用户oracle登录到服务器。
步骤2.打开/etc/oratab文件。
> vi /etc/oratab
步骤3.按i将文件设置为编辑模式。
步骤4.在obd中改变n:/opt/oracle/app/oracle/product/11.2.0/obd:n到y
该语句位于文件末尾。
步骤5.按esc,输入:wq,回车保存信息,退出vi编辑器。
步骤6.切换到用户根目录。
> su – root
the password: is displayed, enter the password for the user root.
步骤7.打开或创建after.local文件在/etc/rc.d目录。
# vi /etc/rc.d/after.local
步骤8.按o键将文件设置为编辑模式。
步骤9.将以下信息添加到after.local文件后面的第一行。
su - oracle -c '$oracle_home/bin/lsnrctl start'
sleep 2s
su - oracle -c '$oracle_home/bin/dbstart'
步骤10.按esc,输入:wq,回车保存信息,退出vi编辑器。
步骤11.设置可执行权限after.local文件。
# chmod +x /etc/rc.d/after.local
- - - - -结束