之前一直在MS SQL SERVER上做开发,一直想去倒腾oracle,苦于没有学习环境,终于决心自己安装个oracle测试环境。
因为是第一次接触,前后花了快一周左右时间,才完全搞定,各种曲折,各种摸索,太费时费神。
所以将安装过程总结成文档,希望能帮助像我一样的oracle初学者。
当中参考了非法小恋的博文,感谢。
安装环境
虚拟机版本:Vmware 7
操作系统版本:Red hat Enterprise Linux 5 32位:
Rhel-server-5.4-i386-dvd.iso
数据库版本:Oracle 11g R2 For Linux 32位:
Linux_11gR2_database_1of2.zip
Linux_11gR2_database_2of2.zip
(一)系统安装
1、Linux安装Oracle系统要求
系统要求 | 说明 |
内存 | 必须高于1G的物理内存 |
交换空间 | 一般为内存的2倍,例如:1G的内存可以设置swap分区为3G大小 |
硬盘 | 5G以上 |
系统安装这里不做具体介绍了,需要注意的是,
安装完系统后一定要记得安装VMWare Tools,否则在安装oracle时到图形界面会很卡很慢:
执行命令如下:
rpm –ivh VMwareTools-4.0.0-398348.i386.rpm
解压VMwareTools-4.0.0-398348.tar.gz
再执行命令
./wmware-install.pl
按照提示默认安装,一直回车,在选择虚拟机分辨率时根据自己电脑选在适当的分辨率。
安装成功后reboot –n重新启动,
2.修改操作系统核心参数
在Root用户下执行以下步骤:
1)修改用户的SHELL的限制,修改/etc/security/limits.conf文件
输入命令:vi/etc/security/limits.conf,按i键进入编辑模式,将下列内容加入该文件。
oracle soft nproc 2047 |
编辑完成后按Esc键,输入“:wq”存盘退出
2)修改/etc/pam.d/login文件,输入命令:vi /etc/pam.d/login,按i键进入编辑模式,将下列内容加入该文件。
session required /lib/security/pam_limits.so |
编辑完成后按Esc键,输入“:wq”存盘退出
3)修改linux内核,修改/etc/sysctl.conf文件,输入命令:vi /etc/sysctl.conf,按i键进入编辑模式,将下列内容加入该文
fs.file-max = 6815744 |
编辑完成后按Esc键,输入“:wq”存盘退出
4)要使 /etc/sysctl.conf更改立即生效,执行以下命令。输入: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 |
5)编辑 /etc/profile,输入命令:vi /etc/profile,按i键进入编辑模式,将下列内容加入该文件。
if [ $USER = "oracle" ]; then fi |
编辑完成后按Esc键,输入“:wq”存盘退出
6)创建相关用户和组,作为软件安装和支持组的拥有者。
创建用户,输入命令: groupadd oinstall 创建Oracle用户和密码,输入命令: useradd -g oinstall -g dba -m oracle passwd oracle 然后会让你输入密码,密码任意输入2次,但必须保持一致,回车确认 |
7)创建数据库软件目录和数据文件存放目录,目录的位置,根据自己的情况来定,注意磁盘空间即可,这里我把其放到oracle用户下,例如:
输入命令: mkdir /home/oracle/app mkdir /home/oracle/app/oracle mkdir /home/oracle/app/oradata mkdir /home/oracle/app/oracle/product |
8)更改目录属主为Oracle用户所有,输入命令:
chown -R oracle:oinstall /home/oracle/app |
9)配置oracle用户的环境变量,首先,切换到新创建的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”存盘退出
数据库安装过程
1)当上述系统要求操作全部完成后,注销系统,在图形界面以Oracle用户登陆。
首先将下载的Oracle安装包复制到linux中,推荐用Xmanager或其他ftp工具拷贝。
打开一个终端,运行unzip命令解压oracle安装文件,如:
输入命令: unzip Linux_11gR2_database_1of2.zip unzip Linux_11gR2_database_2of2.zip |
解压完成后 cd进入其解压后的目录database
输入命令: cd database |
使用ls命令可以查看解压后database所包含的文件,如下图:
2)执行安装,输入命令:./runInstaller
装到这一步,可以看到,可以查看到有很多的rpm包没有,我们可以从安装linux的光盘或ISO中查找所缺的包,使用ftp上传到linux中,然后使用rpm –ivh xxx.rpm --nodeps –force 来进行安装(其中加上--nodeps -- force代表强制安装,是在直接使用rpm –ivh xxx.rpm安装不成功的情况下用的)安装过程略。
等到把包全部都安装好的情况下,再次在oracle图形界面中,执行安装过程2,下来在环境检查过程中,就通过了。
安装完成后,系统会提示你需要用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/app/oraInventory sh orainstRoot.sh |
数据库建库
1)还是在oracle用户的图形界面oracle用户中,新开启一个终端,直接输入命令dbca会弹出如下界面。我们这里采用定制数据库。
经过漫长的等待,当看到此界面,说明oracle建库完成
配置监听及本地网络服务
1)在oracle用户的图形界面oracle用户中,新开启一个终端,输入命令netca会弹出如下界面。
2)创建监听服务(充当oracle服务器,让别的oracle客户端连接本oracle服务器)
3)配置本地网络服务名(充当oracle客户端,连接别的oracle服务器)
输入连接的oracle服务器的数据库的实例名
输入oracle服务器的ip地址
这样oracle服务器安装配置基本就完成了。
如果上面的测试不通过的话,请参考下面的方法。
首先使用oracle用户登录Linux,然后在shell命令行中执行下面的命令:
第一步:打开Oracle监听
$ lsnrctl start
第二步:进入sqlplus
$ sqlplus /nolog
SQL>
第三步:使用sysdab角色登录sqlplus
SQL> conn /as sysdba
第四步:启动数据库
SQL> startup
经过上面的四个步骤,oracle数据库就可以启动了。
如果在打开监听时遇到下面的报错
cannot restore segment prot after reloc: Permission denied
修改配置文件vi /etc/selinux/config和vi /etc/sysconfig/selinux
将SELINUX设置为disabled:
SELINUX=disabled
重新启动