Oracle Linux 6.4 中安装Oracle 11g
1、# cd /etc/yum.repos.d 进入此目录查看是否有下面的 repo,如果有则不需进行第二步
2、# wget http://public-yum.oracle.com/public-yum-ol6.repo 没有则下载
3、# vim public-yum-ol6.repo 修改下面黄色部分值为1
Oracle linux 6.4自带的repo默认是开启的
[ol6_latest]
name=Oracle Linux $releasever Latest ($basearch)
aseurl=http://public-yum.oracle.com/repo/OracleLinux/OL6/latest/$basearch/
gpgkey=http://public-yum.oracle.com/RPM-GPG-KEY-oracle-ol6
gpgcheck=1
enabled=1
[ol6_UEK_latest]
name=Latest Unbreakable Enterprise Kernel for Oracle Linux $releasever ($basearch)
baseurl=http://public-yum.oracle.com/repo/OracleLinux/OL6/UEK/latest/$basearch/
gpgkey=http://public-yum.oracle.com/RPM-GPG-KEY-oracle-ol6
gpgcheck=1
enabled=1
4、# yum install oracle-rdbms-server-11gR2-preinstall 对安装Oracle进行预配置,有以下作用:
1) 自动下载和安装Oracle11gR2的特定的依赖包
2) 创建Oracle用户和组oinstall(OraInventory)和dba(OSDBA),Oracle用户密码请用PASSWD设置
3) 修改内核参数 /etc/sysctl.conf 等。kernel parameters、semaphores、shared memory......
4) 设置硬件和软件shell资源限制 /etc/security/limits.conf如锁定内存空间、文件、进程数,核心文件大小
5) 在x86_64机器内核中设置numa=off
5、#rm -f /var/run/yum.pid
若提示:Another app is currently holding the yum lock 则,可以通过强制关掉yum进程:
6、再查看cat /etc/sysctl.conf 确保下面参数大于以下值,没有则新建(第四步预配置基本上已经搞定了)
#/sbin/sysctl -p 执行此语法则生效
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295
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
7、配置环境变量,vim /home/oracle/.bash_profile ,在后面加入以下变量定义。
若PATH没有配置后面的sqlplus、lsnrctl、emctl等命令则需要在对应的目录下才能执行
export ORACLE_SID=oao //定义数据库名称,配置了则安装时会带出数据库名oao
export ORACLE_BASE=/oracle //定义oracle产品基目录,安装时带出路径
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1 //数据库产品目录,通常为BASE的子目录
export PATH=/usr/sbin:$PATH //此处需特别注意,若没定义系统sbin下命令不能执行
export PATH=$ORACLE_HOME/bin:$PATH //将安装后的oracle命令追加到执行搜索路径
Source ~/.bash_profile 设置生效
以上BASE、HOME、PATH的路径定义根据自己的实际情况确定,我是单独分了区Oracle
8、检查主机名和和ip地址的对应关系:
[root@localhost~]# cat /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=Linux "Linux"为主机名
[root@localhost~]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
(此处没有主机名与IP地址的对应关系,一般建议设置成固定IP,然后在此处定义关系,见下面"3")
否则,安装Oracle 11gR2时会报错:[INS-06101] IP address of localhost could not be determined
出现这种错误是因为主机名和 /etc/hosts 文件不一致,需将主机名和其IP对应关系写入 /etc/hosts 文件
Linux 下修改 /etc/sysconfig/network 里的hostname 需要重启系统才能生效。修改network 文件之外,再使用hostname 命令指定一下主机名,就不用重启OS了
1) 修改 /etc/sysconfig/network 文件
[root@localhost~]# vim /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=Linux
2) 使用hostname 命令修改主机名,该修改重启会失效,但在第一步我们已经修改过。所以失效也没关系
[root@localhost ~]# hostname
localhost
[root@localhost ~]# hostname Linux
[root@localhost ~]# hostname
Linux
3) 修改 /etc/hosts 定义IP与主机名(增加黄色部分)
[root@localhost~]# vim /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
10.240.1.100 Linux
9、oracle 官网下载 Oracle 11g R2,放到新建立到目录下,解压,安装:
# mkdir /oracle 创建目录存放文件 (若已分区则不需要新建)
# cd /oracle
# unzip linux.x64_11gR2_database_1of2.zip 解压
# unzip linux.x64_11gR2_database_2of2.zip
$ cd /oracle/database
$ ./runInstaller 安装开始
10、安装的图形界面此处略去(见其他安装教程),需要注意到是:
安装到最后提醒需要在终端中执行两个语句配置,第二个语句出现让你输入完整到路径时,直接回车即可
11、安装完毕。系统默认Oracle服务、监听、控制台是开启状态的。
此时应该可以使用
sqlplus / as sysdba 连接数据库进入 SQL>
若重启电脑后需要重新启动(也可设置成开机启动,见其他教程),启动顺序如下:
1) sqlplus / as sysdba //连接数据库
SQL> startup
2) lsnrctl start //启动监听
3) emctl start dbconsole //启动em--数据库控制台
12、若第11步 1)、2)、3)、均OK,则应可以通过浏览器登陆控制台,https://Linux:1158/em
若还是无法进入到控制台,请尝试:
关闭防火墙、测试端口是否开启,关闭Selinux ,关于防火墙及端口请看第13步。当然还有可能是浏览器的原因,本人就是因为浏览器的原因折腾了一天一宿
浏览器的原因可升级一下浏览器,oracle linux 6.4 自带 Firefox 12.0 升级到最新的17.0.6即可
# yum update firefox
==========================================
Package Arch Version Repository Size
==========================================
Updating:
firefox x86_64 17.0.6-1.0.1.el6_4 ol6_latest 25 M
Updating for dependencies:
xulrunner x86_64 17.0.6-2.0.1.el6_4 ol6_latest 14 M
13、关于端口、防火墙、Selinux设置
一般情况下iptables已经包含在Linux发行版中。运行iptables --version来查看系统是否安装iptables
1) 重启后生效
开启: chkconfig iptables on 关闭: chkconfig iptables off
2) 即时生效,重启后失效
开启: service iptables start 关闭: service iptables stop
需要说明的是对于Linux下的其它服务都可以用以上命令执行开启和关闭操作。
在开启了防火墙时,做如下设置,开启相关端口
修改 vim /etc/sysconfig/iptables 文件,添加以下内容:
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
启动iptables :service iptables start
iptables --list //*查看iptables规则集*// 。下面是没有定义规划时iptables的样子:
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
如何开启/关闭指定端口,例如:
开启81端口:
iptables -I INPUT -i eth0 -p tcp --dport 81 -j ACCEPT
iptables -I OUTPUT -o eth0 -p tcp --sport 81 -j ACCEPT
关闭81端口:
iptables -I INPUT -i eth0 -p tcp --dport 81 -j DROP
iptables -I OUTPUT -o eth0 -p tcp --sport 81 -j DROP
然后保存 /etc/rc.d/init.d/iptables save
查看某一端口是否开放我就以81端口为例: lsof -i:81
如果有显示说明已经开放了.如果没有显示说明没有开放
检查包: rpm -qa | grep
查端口:lsof -i:端口号
切换到oracle用户:su - oracle
查看配置的环境变量是否正确:env |grep ora
关闭SElinux:vim /etc/selinux/config 中修改属性
SELINUX=disable