linux5.2 X64下安装oracle 11G r2 X64完全攻略
2012-07-27 17:56
423 查看
在Linux 64位下安装配置Oracle11g R2,来自网络上文章的修改,自己整合了一下:
一、Linux环境安装oralce
环境:Linux:Redhat Enterprise 5.2,
DB:Oracle 11g R2 X64,
本例是将Oracle 11g安装到linux的/home/oradb/oracle目录下。
配置过程:
1、 检查基本需求
内存大小
grep MemTotal /proc/meminfo
复制代码
交换分区大小
grep SwapTotal /proc/meminfo
复制代码
增加交换分区
创建/home/swap这么一个分区文件。文件的大小是5120000个block,一般情况下1个block为1K,所以这里空间是5G,以此类推。
dd if=/dev/zero of=/home/swap bs=1024 count=5120000
复制代码
接着把这个分区变成swap分区。
mkswap /home/swap
复制代码
使用这个swap分区。使其成为有效状态
/sbin/swapon /home/swap
复制代码
最后把它加到fstab里面
echo "/home/swap swap swap defaults 0 0" >> /etc/fstab
复制代码
这样重启之后swap就是现在设置的大小了。
这里要注意的是swap的大小最小最后等于内存的大小,另外TMP和/ 可以设置为15G。
检查主机名:hostname
检查网络配置:ifconfig eth0
查看host文件:cat /etc/hosts
2、 检查软件需求,用yum install来安装
rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel glibc glibc-common glibc-devel gcc- gcc-c++ libaio-devel libaio libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel pdksh
(以上如果出现没有安装的,把Linux光盘放入,在Server文件夹,找到对应的RPM包,运行RPM命令来进行安装,如果喜欢图形界面,在图像界面中通过双击对应的RPM包来安装。需要注意的是在安装libaio-devel unixODBC unixODBC-devel 这3个软件包的时候,除了安装X64的包以为,还要安装i386的包,不能因为是X64的系统,就不装i386的包了。 )
本例中libaio-devel-0.3.106 unixODBC-2.2.11 unixODBC-devel-2.2.11 这三个包的32位安装了,但是在oracle中提示检测失败,本例跳过检测来安装的。
3、配置内核。
将以下内容添加至文件:/etc/sysctl.conf
# Kernel paramaters required by Oracle 11gR1
fs.file-max = 6815744
fs.aio-max-nr = 1048576
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 = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
复制代码
执行以下命令使 /etc/sysctl.conf 的更改立即生效。
sysctl –p
复制代码
4、将以下内容添加至文件:/etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
复制代码
5、将以下内容添加至文件:/etc/pam.d/login
session required /lib64/security/pam_limits.so
session required pam_limits.so
复制代码
注意:X64的系统,这里就要用 /lib64/security/pam_limits.so,如果是32位的系统应该是/lib/security/pam_limits.so
6、 将以下内容添加至文件: /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用户密码
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle
复制代码
这里需要检查是否有nobody用户,没有的话要添加一个,检测命令:id nobody
8、创建软件的安装目录并设置目录权限给oracle用户
mkdir –p /home/oradb/oracle/
chown -R oracle.oinstall /home/oradb/
chmod -R 755 /home/oradb/
复制代码
9、 将以下内容添加至文件: /home/oracle/.bash_profile
umask 022
ORACLE_BASE=/home/oradb/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
ORACLE_SID=orcl --实例名,根据需要进行修改,这里是oracle数据线系统安装的时候默认的
PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
LANG=C --设定此参数避免安装的时候出现乱码
export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH LD_LIBRARY_PATH LANG
复制代码
上面这个配置文件要记住,后面安装的时候需要相同的设置,以上目录可以自行定义。
添加完以上内容后保存退出,通过命令:source .bashrc 者./.bashrc 使“.bash_profile”设置生效,
也可以通过重新切换到oracle用户来生效。
用oracle登录后,验证变量是否生效:echo $ORACLE_BASE
以上所有修改文件尽量不要用复制粘贴,否则用vi查看每行的代码,没行代码的后面会多出“^m”字符,导致环境变量等出错无法识别,导致后面的sqlplus无法使用。
10、在图形界面下(本机操作或通过VNC远程操作) 以root打开一个终端窗口
--这步好像是设置显示什么的,比较重要,不执行这步在以oracle用户运行“./runInstaller”时会启动不了oracle的图型安装界面
xhost +
xhost + localhost
复制代码
11、将下载的Oracle安装文件解压到Linux中,然后安装数据库,需要赋予oracle对下面database的权限,否则可能安装不了。
#su - oracle
cd database/
./runInstaller
复制代码
注意:这里一定要用oracle用户来安装。database目录里是oracle的安装文件。
12、之后开始出现图形化的安装向导,按照向导操作即可。 注意安装目录等和“.bash_profile”文件里要对应起来
这里有个问题要提醒一下,oracle的密码是大小写字母+数字,数字不能放在密码的开头,尽量按照密码的规范来设置,否则后面的安装可能出错
二、确认安装是否成功
Linux下Oracle在安装结束后就是处于运行状态。输入:
top –u oracle
复制代码
可看到以Oracle用户运行的进程。
在图形化界面下,运行
$ORACLE_HOME/sqldeveloper/sqldeveloper.sh
复制代码
会出现Oracle自带的免费Oracle管理客户端SQL Developer。
现在连接刚安装的Oracle,看看是否能连接成功。
另外也可以通过https://localhost:1158/em/来访问控制台。
三、手动启动oracle服务
reboot重启服务器后,Oracle默认情况下没有在系统中注册成服务,随系统启动而启动的,这时需要手动输入命令来启动。
启动方式:
以oracle用户登录运行以下语句:
1,进入sqlplus:
sqlplus /nolog
复制代码
2,以sysdba的身份连接到数据库,并启动Oracle数据库引擎:
SQL> conn /as sysdba
SQL> startup
复制代码
3,退出sqlplus,运行Listener监听服务
SQL> exit
$ lsnrctl start
复制代码
这样数据库的TNS服务启动了,可通过网络来连接数据库。一般情况启动这两个就够了,如果想用Oracle提供的EM来管理Oracle的话还需要启动EM控制台,运行如下命令:
$ emctl start dbconsole
复制代码
这样就可以通过https://localhost:1158/em来访问EM控制台了。
四、配置Oracle的开机自启动
为了每次开机的时候能自动启动Oracle,可以将Oracle配置为Linux的服务。操作如下:
1、以root用户建立一个脚本文件
/etc/rc.d/init.d/oracle11g
复制代码
内容如下(环境变量的设置根据实际情况进行修改):
#!/bin/bash
#
# chkconfig: 35 95 1
# description: init script to start/stop oracle database 11g, TNS listener, EM
#
#
#
# match these values to your environment:
ORACLE_BASE=/home/oradb/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
ORACLE_SID=orcl
ORACLE_UNQNAME=oracle
PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
LANG=C
export ORACLE_BASE ORACLE_HOME ORACLE_SID ORACLE_UNQNAME PATH LD_LIBRARY_PATH LANG
# see how we are called:
case $1 in
start)
su - oracle<<EOO
lsnrctl start
sqlplus /nolog<<EOS
connect / as sysdba
startup
EOS
emctl start dbconsole
EOO
;;
stop)
su - oracle<<EOO
lsnrctl stop
sqlplus /nolog<<EOS
connect / as sysdba
shutdown immediate
EOS
emctl stop dbconsole
EOO
;;
*)
echo "Usage: $0 {start|stop}"
;;
esac
复制代码
以上所有修改文件尽量不要用复制粘贴,用vi检查每行的代码后面是否有“^m”或者“空格”,将其去掉,否则会出错。
2、以root用户执行以下命令,给权限,添加系统启动服务
chmod 755 /etc/rc.d/init.d/oracle11g
chkconfig --add oracle11g
复制代码
3、重启服务
service oracle11g stop
service oracle11g start
复制代码
这样在服务器开启和关闭的时候oracle就能自动启动和停止。
4、修改/etc/oratab这个文件,将最后的N改为Y,如下:
/home/oradb/oracle/product/11.2.0/db_1:Y
复制代码
最后,重启服务器,利用客户端便可以正常连接到Oracle数据库。
至此,Oracle环境配置完成。
一、Linux环境安装oralce
环境:Linux:Redhat Enterprise 5.2,
DB:Oracle 11g R2 X64,
本例是将Oracle 11g安装到linux的/home/oradb/oracle目录下。
配置过程:
1、 检查基本需求
内存大小
grep MemTotal /proc/meminfo
复制代码
交换分区大小
grep SwapTotal /proc/meminfo
复制代码
增加交换分区
创建/home/swap这么一个分区文件。文件的大小是5120000个block,一般情况下1个block为1K,所以这里空间是5G,以此类推。
dd if=/dev/zero of=/home/swap bs=1024 count=5120000
复制代码
接着把这个分区变成swap分区。
mkswap /home/swap
复制代码
使用这个swap分区。使其成为有效状态
/sbin/swapon /home/swap
复制代码
最后把它加到fstab里面
echo "/home/swap swap swap defaults 0 0" >> /etc/fstab
复制代码
这样重启之后swap就是现在设置的大小了。
这里要注意的是swap的大小最小最后等于内存的大小,另外TMP和/ 可以设置为15G。
检查主机名:hostname
检查网络配置:ifconfig eth0
查看host文件:cat /etc/hosts
2、 检查软件需求,用yum install来安装
rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel glibc glibc-common glibc-devel gcc- gcc-c++ libaio-devel libaio libgcc libstdc++ libstdc++-devel make sysstat unixODBC unixODBC-devel pdksh
(以上如果出现没有安装的,把Linux光盘放入,在Server文件夹,找到对应的RPM包,运行RPM命令来进行安装,如果喜欢图形界面,在图像界面中通过双击对应的RPM包来安装。需要注意的是在安装libaio-devel unixODBC unixODBC-devel 这3个软件包的时候,除了安装X64的包以为,还要安装i386的包,不能因为是X64的系统,就不装i386的包了。 )
本例中libaio-devel-0.3.106 unixODBC-2.2.11 unixODBC-devel-2.2.11 这三个包的32位安装了,但是在oracle中提示检测失败,本例跳过检测来安装的。
3、配置内核。
将以下内容添加至文件:/etc/sysctl.conf
# Kernel paramaters required by Oracle 11gR1
fs.file-max = 6815744
fs.aio-max-nr = 1048576
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 = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
复制代码
执行以下命令使 /etc/sysctl.conf 的更改立即生效。
sysctl –p
复制代码
4、将以下内容添加至文件:/etc/security/limits.conf
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
复制代码
5、将以下内容添加至文件:/etc/pam.d/login
session required /lib64/security/pam_limits.so
session required pam_limits.so
复制代码
注意:X64的系统,这里就要用 /lib64/security/pam_limits.so,如果是32位的系统应该是/lib/security/pam_limits.so
6、 将以下内容添加至文件: /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用户密码
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle
复制代码
这里需要检查是否有nobody用户,没有的话要添加一个,检测命令:id nobody
8、创建软件的安装目录并设置目录权限给oracle用户
mkdir –p /home/oradb/oracle/
chown -R oracle.oinstall /home/oradb/
chmod -R 755 /home/oradb/
复制代码
9、 将以下内容添加至文件: /home/oracle/.bash_profile
umask 022
ORACLE_BASE=/home/oradb/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
ORACLE_SID=orcl --实例名,根据需要进行修改,这里是oracle数据线系统安装的时候默认的
PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
LANG=C --设定此参数避免安装的时候出现乱码
export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH LD_LIBRARY_PATH LANG
复制代码
上面这个配置文件要记住,后面安装的时候需要相同的设置,以上目录可以自行定义。
添加完以上内容后保存退出,通过命令:source .bashrc 者./.bashrc 使“.bash_profile”设置生效,
也可以通过重新切换到oracle用户来生效。
用oracle登录后,验证变量是否生效:echo $ORACLE_BASE
以上所有修改文件尽量不要用复制粘贴,否则用vi查看每行的代码,没行代码的后面会多出“^m”字符,导致环境变量等出错无法识别,导致后面的sqlplus无法使用。
10、在图形界面下(本机操作或通过VNC远程操作) 以root打开一个终端窗口
--这步好像是设置显示什么的,比较重要,不执行这步在以oracle用户运行“./runInstaller”时会启动不了oracle的图型安装界面
xhost +
xhost + localhost
复制代码
11、将下载的Oracle安装文件解压到Linux中,然后安装数据库,需要赋予oracle对下面database的权限,否则可能安装不了。
#su - oracle
cd database/
./runInstaller
复制代码
注意:这里一定要用oracle用户来安装。database目录里是oracle的安装文件。
12、之后开始出现图形化的安装向导,按照向导操作即可。 注意安装目录等和“.bash_profile”文件里要对应起来
这里有个问题要提醒一下,oracle的密码是大小写字母+数字,数字不能放在密码的开头,尽量按照密码的规范来设置,否则后面的安装可能出错
二、确认安装是否成功
Linux下Oracle在安装结束后就是处于运行状态。输入:
top –u oracle
复制代码
可看到以Oracle用户运行的进程。
在图形化界面下,运行
$ORACLE_HOME/sqldeveloper/sqldeveloper.sh
复制代码
会出现Oracle自带的免费Oracle管理客户端SQL Developer。
现在连接刚安装的Oracle,看看是否能连接成功。
另外也可以通过https://localhost:1158/em/来访问控制台。
三、手动启动oracle服务
reboot重启服务器后,Oracle默认情况下没有在系统中注册成服务,随系统启动而启动的,这时需要手动输入命令来启动。
启动方式:
以oracle用户登录运行以下语句:
1,进入sqlplus:
sqlplus /nolog
复制代码
2,以sysdba的身份连接到数据库,并启动Oracle数据库引擎:
SQL> conn /as sysdba
SQL> startup
复制代码
3,退出sqlplus,运行Listener监听服务
SQL> exit
$ lsnrctl start
复制代码
这样数据库的TNS服务启动了,可通过网络来连接数据库。一般情况启动这两个就够了,如果想用Oracle提供的EM来管理Oracle的话还需要启动EM控制台,运行如下命令:
$ emctl start dbconsole
复制代码
这样就可以通过https://localhost:1158/em来访问EM控制台了。
四、配置Oracle的开机自启动
为了每次开机的时候能自动启动Oracle,可以将Oracle配置为Linux的服务。操作如下:
1、以root用户建立一个脚本文件
/etc/rc.d/init.d/oracle11g
复制代码
内容如下(环境变量的设置根据实际情况进行修改):
#!/bin/bash
#
# chkconfig: 35 95 1
# description: init script to start/stop oracle database 11g, TNS listener, EM
#
#
#
# match these values to your environment:
ORACLE_BASE=/home/oradb/oracle
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
ORACLE_SID=orcl
ORACLE_UNQNAME=oracle
PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
LANG=C
export ORACLE_BASE ORACLE_HOME ORACLE_SID ORACLE_UNQNAME PATH LD_LIBRARY_PATH LANG
# see how we are called:
case $1 in
start)
su - oracle<<EOO
lsnrctl start
sqlplus /nolog<<EOS
connect / as sysdba
startup
EOS
emctl start dbconsole
EOO
;;
stop)
su - oracle<<EOO
lsnrctl stop
sqlplus /nolog<<EOS
connect / as sysdba
shutdown immediate
EOS
emctl stop dbconsole
EOO
;;
*)
echo "Usage: $0 {start|stop}"
;;
esac
复制代码
以上所有修改文件尽量不要用复制粘贴,用vi检查每行的代码后面是否有“^m”或者“空格”,将其去掉,否则会出错。
2、以root用户执行以下命令,给权限,添加系统启动服务
chmod 755 /etc/rc.d/init.d/oracle11g
chkconfig --add oracle11g
复制代码
3、重启服务
service oracle11g stop
service oracle11g start
复制代码
这样在服务器开启和关闭的时候oracle就能自动启动和停止。
4、修改/etc/oratab这个文件,将最后的N改为Y,如下:
/home/oradb/oracle/product/11.2.0/db_1:Y
复制代码
最后,重启服务器,利用客户端便可以正常连接到Oracle数据库。
至此,Oracle环境配置完成。
相关文章推荐
- linux下安装oracle 11G 完全攻略
- X86_64平台下Oracle 11g R2 X64 for Linux的软件安装、数据库安装、服务配置、数据库启动和停止、SQLPLus使用
- ORACLE 11G R2 RAC+Mutilpath+RAW+ASM+Silent+AddNode+DG 完全安装详解 (一)
- Linux 7下脚本安装配置oracle 11g r2教程
- linux下oracle 11g r2的安装(一)
- Oracle 11g R2 For RedHat Enterprise Linux 5.5 安装说明
- linux centos 5.2 安装 oracle 11g
- oracle 11g R2 database安装中出现问题后完全卸载后正常安装成功方法
- Win-Server-2008-R2-x64安装Oracle-11g-R2-x64及问题处理
- linux安装oracle 11g r2 详细步骤及问题
- Linux 安装 Oracle 11g R2
- Linux oracle 11g r2 安装前检查及安装
- linux下oracle 11g r2的安装(二)
- 安装修改CentOS 5.5上安装ORACLE 11g R2最完全安装教程
- Linux + Oracle 11g R2 RAC 安装配置详细过程
- Oracle 11g R2安装全攻略 - For Windows 7 图文教程
- Linux系统下安装oracle _11g_R2 dataguard-physical standby
- Linux安装 oracle 11g r2 .
- linux上安装Oracle 11g R2 标准版 64位
- 在widows 2008 x64bit R2下安装Oracle db 10.2.0.4时遇到的"检查操作系统版本: 必须是5.1 or 5.2。实际为 6.1未通过"