Linux下安装Oracle11g服务器
Linux服务器:SuSe10 sp2 64位
Oracle服务器:Oracle11gR2 64位
Linux安装Oracle系统要求
系统要求
说明
内存
必须高于1G的物理内存
交换空间
一般为内存的2倍,例如:1G的内存可以设置swap 分区为3G大小
/boot 1000
/ 3000
Swap 3000
硬盘
5G以上
在Root用户下执行以下步骤:
为了避免oracle安装过程检测到有rpm包没有安装要而回到root用户安装这些包,所以在进行安装oracle之前先检查下有没有没安装的包,现在就安装上。
输入以下命令检查以下rpm包:
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 elfutils-libelf-devel-static
注意 pdksh可被ksh代替
rpm -ivh gcc-4.1.2-50.el5.x86_64.rpm
rpm -ivh glibc-devel-2.5-58.x86_64.rpm
rpm -ivh glibc-headers-2.5-58.x86_64.rpm
rpm -ivh kernel-headers-2.6.18-238.el5.x86_64.rpm
rpm -ivh glibc-headers-2.5-58.x86_64.rpm
rpm -ivh gcc-4.1.2-50.el5.x86_64.rpm
rpm -ivh glibc-devel-2.5-58.x86_64.rpm
rpm -ivh gcc-4.1.2-50.el5.x86_64.rpm
rpm -ivh glibc-devel-2.5-58.
rpm -ivh gcc-c++-4.1.2-50.el5.x86_64.rpm
rpm -ivh libstdc++-devel-4.1.2-50.el5.x86_64.rpm
rpm -ivh libstdc++-devel-4.1.2-50.el5.i386.rpm
rpm -ivh glibc-2.5-58.x86_64.rpm
rpm -ivh glibc-devel-2.5-58.x86_64.rpm
rpm -ivh glibc-devel-2.5-58.i386.rpm
rpm -ivh libaio-0.3.106-5.x86_64.rpm
rpm -ivh libaio-devel-0.3.106-5.x86_64.rpm
rpm -ivh libaio-devel-0.3.106-5.i386.rpm
rpm -ivh pdksh-5.2.14-36.el5.x86_64.rpm
rpm -ivh sysstat-7.0.2-3.el5_5.1.x86_64.rpm
rpm -ivh unixODBC-2.2.11-7.1.x86_64.rpm
rpm -ivh unixODBC-2.2.11-7.1.i386.rpm
rpm -ivh unixODBC-devel-2.2.11-7.1.x86_64.rpm
rpm -ivh unixODBC-devel-2.2.11-7.1.i386.rpm
作为软件安装和支持组的拥有者。
创建用户,输入命令:
groupadd oinstall groupadd dba
创建Oracle用户和密码,输入命令:
useradd -g oinstall -g dba -m oracle
passwd oracle
然后会让你输入密码,密码任意输入2次,但必须保持一致,回车确认
输入命令:vi /etc/security/limits.conf,按i键进入编辑模式,将下列内容加入该文件。
oracle soft nproc 2047oracle hard nproc 16384oracle soft nofile 1024oracle hard nofile 65536
编辑完成后按Esc键,输入“:wq”存盘退出
输入命令:vi /etc/pam.d/login,按i键进入编辑模式,将下列内容加入该文件。
session required /lib/security/pam_limits.so session required pam_limits.so
编辑完成后按Esc键,输入“:wq”存盘退出
输入命令: vi /etc/sysctl.conf ,按i键进入编辑模式,将下列内容加入该文件
fs.file-max = 6815744 fs.aio-max-nr = 1048576 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
编辑完成后按Esc键,输入“:wq”存盘退出
执行以下命令。 输入:sysctl -p 显示如下:
linux:~ # sysctl -p
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.conf.all.rp_filter = 1
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
按i键进入编辑模式,将下列内容加入该文件。
if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi
fi
编辑完成后按Esc键,输入“:wq”存盘退出
目录的位置,根据自己的情况来定,注意磁盘空间即可,这里我把其放到oracle用户下,例如:
输入命令:
mkdir /home/oracle/app
mkdir /home/oracle/app/oracle
mkdir /home/oracle/app/oradata
mkdir /home/oracle/app/oracle/product
chown -R oracle:oinstall /home/oracle/app
首先,切换到新创建的oracle用户下
输入:su – oracle ,然后直接在输入 : vi .bash_profile
按i编辑 .bash_profile,进入编辑模式,增加以下内容:
umask 022
export ORACLE_BASE=/home/oracle/app
export ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/dbhome_1
export ORACLE_SID=orcl
export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
编辑完成后按Esc键,输入“:wq”存盘退出
source .bash_profile
首先将下载的Oracle安装包复制到linux中,推荐用Xmanager 或其他ftp工具拷贝。
打开一个终端,运行unzip命令解压oracle安装文件,如:
输入命令:
unzip linux.x64_11gR2_database_1of2.zip
unzip linux.x64_11gR2_database_2of2.zip
解压l
输入命令:
cd database
使用ls命令可以查看解压后database所包含的文件,如下图:
2)执行xhost +(使用root用户在系统里面执行)
装到这一步,可以看到,可以查看到有很多的rpm包没有,我们可以从安装linux的光盘或ISO中查找所缺的包,使用ftp上传到linux中,然后使用rpm –ivh xxx.rpm --nodeps --force 来进行安装(其中加上--nodeps -- force 代表强制安装,是在直接使用rpm –ivh xxx.rpm安装不成功的情况下用的)安装过程略。
等到把包全部都安装好的情况下,再次在oracle图形界面中,执行安装过程2,下来在环境检查过程中,就通过了。
注意:如果出现swap空间大小问题
free -m 查看内存和swap大小;
dd if=/dev/zero of=/tmp/big-swap bs=1024 connt=2000000
tmp目录下
du -sh big-swap
ls -al big-swap
swapon big-swap
4)安装完成后,系统会提示你需要用root权限执行2个shell脚本。
按照其提示的路径,找到其所在的位置,如:我的就在/home/oracle/app/oracle/product/11.2.0/dbhome_1/root.sh
和 /home/oracle/app/oraInventory/orainstRoot.sh 新开启一个终端,输入命令:
su – root
cd /home/oracle/app/oracle/product/11.2.0/dbhome_1
sh root.sh
cd /home/oracle/oraInventory
sh orainstRoot.sh
新开启一个终端,直接输入命令dbca会弹出如下界面。我们这里采用定制数据库。
输入统一密码(也可以分别设置其密码)
数据库存放位置,我这里采用默认
不指定快速恢复和归档
去掉不常用的模块
内存分配及指定字符集
经过漫长的等待,当看到此界面,说明oracle建库完成
可以用sqlplus来检验下,新开启一个命令窗口,输入sqlplus,然后输入用户名和密码,可以测试下,这里就不做过多的介绍了。
新开启一个终端,输入命令netca 会弹出如下界面。
输入连接的oracle服务器的数据库的实例名
输入oracle服务器的ip地址
选中测试
点击change Login 输入所连接oracle服务器的其中某一个用户名和密码,点击OK
看到此界面说明测试成功(如果不成功,请查看网络是否畅通,所连接的oracle服务器是否启动,监听是否启动等原因)
为你所设置的本地网络服务名起个名字
然后下一步,下一步即可
5、监听启动报错处理
orcl =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.134.110)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME =orcl)
(SID_NAME =orcl)
)
)
1、在oracle用户下执行
检查$ORACLE_HOME/bin/oracle权限
settledb01:/oracle/app/oracle/product/11.02/db_1/bin >ls -al oracle
-rwxr-xr-x 1 oracle oinstall 294663505 May 20 03:48 oracle
发现没有s权限。
解决措施:
增加$ORACLE_HOME/bin/oracle文件的s权限
settledb01:/oracle/app/oracle/product/11.02/db_1/bin >chmod +s oraclesettledb01:/oracle/app/oracle/product/11.02/db_1/bin >ls -al oracle-rwsr-sr-x 1 oracle oinstall 294663505 May 20 03:48 oracle
