Linux安装oracle数据库
-
预制条件:
CentOS linux 系统服务器
Oracle11g安装包,官网链接:https://www.oracle.com/technetwork/database/enterprise-edition/downloads/112010-linx8664soft-100572.html -
创建oracle用户和用户组:
# 创建用户和用户组 /usr/sbin/groupadd oinstall /usr/sbin/groupadd dba /usr/sbin/useradd -g oinstall -G dba oracle passwd oracle
-
配置OS核心参数:打开配置文件,vi /etc/sysctl.conf
#ORACLE SETTING fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmmax = 3221225472 kernel.shmall = 1048576 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 = 1048586 kernel.panic_on_oops = 1 vm.swappiness=10 vm.vfs_cache_pressure=200
-
设置oracle用户的shell限制:
4.1 打开配置文件,vi /etc/security/limits.conforacle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536
4.2 打开配置文件,vi /etc/pam.d/login
session required /lib/security/pam_limits.so session required pam_limits.so
4.3 打开配置文件,vi /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
-
创建目录:
mkdir -p /home/oracle chown -R oracle:oinstall /home/oracle chmod -R 775 /home/oracle mkdir -p /home/oracle/oraInventory chown -R oracle:oinstall /home/oracle/oraInventory chmod -R 775 /home/oracle/oraInventory
-
配置Oracle用户环境:
1> 在root用户下,在/home/oracle目录中创建一个.bash_profile文件
2> 在root用户下,更改所属用户和用户组,更改权限
touch /home/oracle/.bash_profile chown oracle:oinstall /home/oracle/.bash_profile chmod 775 /home/oracle/.bash_profile
3>用su - oracle 进入oracle用户下,编辑.bash_profile文件,vi /home/oracle/.bash_profile
export LANG=zh_CN.gnk export Lc_ALL=C export ORACLE_SID=ORCL export ORACLE_BASE=/home/oracle/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1 export ORACLE_OWNER=oracle export PATH=$PATH:$ORACLE_HOME/bin export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
4>执行.bash_profile文件,并检查是否生效,source ./.bash_profile
-
安装数据库
1>oracle自检,执行xhost local:oracle
如果出现:-bash: xhost: command not found
解决办法:
输入:yum whatprovides “*/xhost”[root@iZuf62q9sqpx7kwg0m00tiZ oracle]# yum whatprovides "*/xhost" -----查看是哪些提供了 */xhost Loaded plugins: product-id, security, subscription-manager This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register. base/filelists_db | 3.4 MB 00:00 ... xorg-x11-server-utils-7.7-20.el7.x86_64 : X.Org X11 X server utilities -----就是缺少这个包xorg-x11-server-utils-7.7-20.el7.x86_64 Repo : base Matched from: Filename : /usr/bin/xhost
所以输入:yum -y install xorg-x11-server-utils-7.7-20.el7.x86_64就可以解决这个问题。
如果出现:xhost: unable to open display “”
解决办法:
export DISPLAY=IP:0.0
这个是远程客户端上的命令,比如你的oracle服务器ip是192.168.0.1,访问的客户端的ip是192.168.1.2,当你用192.168.1.2连接上数据库后,希望在192.168.1.2上显示图像界面,
这是就需要export DISPLAY=192.168.1.2:0.0 ,然后通过xhost + 授权来显示图形界面,前提是192.168.1.2上要安装Xmanager
2> 在oracle数据库官网下载对应的数据库版本
https://www.oracle.com/technetwork/database/enterprise-edition/downloads/112010-linx8664soft-100572.html
将数据库文件放置/home目录下,并对其进行赋权775
用unzip命令对其2个zip文件进行解压缩:unzip linux.x64_11gR2_database_1of2.zip unzip linux.x64_11gR2_database_2of2.zip
解压缩完成之后,可以用ll命令进行查看,生成了一个database文件夹
3> 登录到服务器的桌面交互页面,在oracle用户下,进入/home/database目录,执行./runInstaller
等待一会儿会出现如图的界面
4> 根据下面图片来配置参数:
执行到检查依赖文件时,有可能报错,类似如下:
图中展示第一条为分区不足,我们需要来配置下分区:
使用free -m查看swap分区大小
使用dd if=/dev/zero of=/home/swap bs=1024 count=9000000来创建分区,count后的值根据实际需求来设定,上图中最小期望值为8009176
格式化交换文件mkswap /home/swap,再swapon /home/swap 来启用swap文件
配置引导分区自动启动,打开vi /etc/fstab文件,假如自动启动命令
/home/swap swap swap defaults 0 0
再点击check again查看时,就可以发现swap的警告消失了
再次检查发现,os内核参数的semmni参数期望值需要128(此处其实就是修改sem参数的最后一位,如果最后一位是128,即可忽略这个错误 ),shmall期望值需要2097152
我们来修改os的配置参数:vi /etc/sysctl.conf修改一下参数值
kernel.shmall =2097152
保存之后,使用/sbin/sysctl -p使配置参数生效
再次点击检查
下面提示了很多依赖包,需要找对应的rpm包的依赖文件,下载下来,并用rpm命令进行安装
在安装依赖包完成之后,点击check again,再点击下一步
等待安装
执行完成100%之后,会跳出2个文件名,需要跳转到对应目录下执行:
cd /home/oracle/app/oraInventory/
./orainstRoot.sh
cd /home/oracle/app/oracle/product/11.2.0/dbhome_1/
./root.sh
-
设置监听:
在oracle用户下,跳转cd /home/oracle/app/oracle/product/11.2.0/dbhome_1/bin
执行./netca
弹出如下窗口
一直点击下一步配置,并完成。
-
设置数据库实例
根据我们在数据库环境变量配置文件中设置的 数据库实例名来创建实例
在oracle用户下,进入cd /home/oracle/app/oracle/product/11.2.0/dbhome_1/bin
执行./dbca
下一步到配置密码时,设置自己的密码
下一步到点击Finish,然后点击ok
等到创建数据库实例结束之后,用oracle的客户端工具sqldeveloper访问数据库实例
测试连接成功