Centos7安裝Oracle12c教程
阿新 • • 發佈:2020-09-01
12c資料庫
建立oracle的系統使用者和使用者組
1 [root@localhost /]# groupadd oinstall 2 [root@localhost /]# groupadd dba 3 [root@localhost /]# groupadd oper 4 [root@localhost /]# useradd -g oinstall -G dba,oper oracle 5 [root@localhost /]# echo "root" | passwd --stdin oracle
建立oracle安裝目錄
1 [root@localhost home]# mkdir -p /home/app/oracle/product/12.1.0/db_12 [root@localhost home]# chown -R oracle:oinstall /home/app 3 [root@localhost home]# chmod -R 775 /home/app
修改核心引數
1 vim /etc/sysctl.conf 2 3 fs.aio-max-nr = 1048576 4 fs.file-max = 6815744 5 kernel.shmall = 2097152 6 kernel.shmmax = 1200000000 7 kernel.shmmni = 4096 8 kernel.sem = 250 32000 100 1289 net.ipv4.ip_local_port_range = 9000 65500 10 net.core.rmem_default = 262144 11 net.core.rmem_max = 4194304 12 net.core.wmem_default = 262144 13 net.core.wmem_max = 1048576 14 15 #使其生效 16 [root@localhost home]# sysctl -p
修改檔案限制
[root@localhost home]# vi /etc/security/limits.conf
1 oracle soft nproc 20472 oracle hard nproc 16384 3 oracle soft nofile 1024 4 oracle hard nofile 65536 5 oracle soft stack 10240
[root@localhost home]# vim /etc/pam.d/login 新增: session required pam_limits.so 修改ulimit:vi /etc/profile,新增: [root@localhost home]# vim /etc/profile if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536a else ulimit -u 16384 -n 65536 fi fi |
修改環境變數
1 [root@localhost home]# vim ~oracle/.bash_profile 2 3 ORACLE_BASE=/home/app/oracle 4 ORACLE_HOME=$ORACLE_BASE/product/12.1.0/db_1 5 ORACLE_SID=gdlisnet 6 export ORACLE_BASE ORACLE_HOME ORACLE_SID 7 PATH=$ORACLE_HOME/bin:$PATH 8 export PATH 9 export LANG=C 10 export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK 11 #生效 12 [root@localhost home]# source /home/oracle/.bash_profile
安裝依賴包
yum -y install binutils compat-libcap1 compat-libstdc++-33 compat-libstdc++-33*.i686 elfutils-libelf-devel gcc gcc-c++ glibc*.i686 glibc glibc-devel glibc-devel*.i686 ksh libgcc*.i686 libgcc libstdc++ libstdc++*.i686 libstdc++-devel libstdc++-devel*.i686 libaio libaio*.i686 libaio-devel libaio-devel*.i686 make sysstat unixODBC unixODBC*.i686 unixODBC-devel unixODBC-devel*.i686 libXpView Code
關閉防火牆
systemctl stop firewalld
systemctl disable firewalld.service 重啟也是禁止的
進行安裝
以oracle使用者登入 [oracle@localhost home]# cd /home/app/oracle [oracle@localhost oracle]# unzip linuxx64_12201_database.zip [oracle@localhost oracle]# export LANG="en_US" [oracle@localhost oracle]# cd /home/app/oracle/database [oracle@localhost oracle]# ./runInstaller 輸入xhost+時候如果找不到命令需要安裝 yum whatprovides "*/xhost" 按照結果yum 安裝 如果報錯: /usr/bin/xdpyinfo 檢查是否安裝 yum -y install xdpyinfo 進行安裝 [oracle@localhost database]$ xhost + xhost: unable to open display "" #本機IP:192.168.10.38 [oracle@localhost database]$ export DISPLAY=192.168.10.38:0.0 [oracle@localhost database]$ xhost + access control disabled, clients can connect from any host 開啟Xmanager - Passive即可調出介面
建立和配置資料庫
伺服器類
單例項資料庫
高階安裝
企業版
一般用途
設定SID和資料庫名,把建立容器資料庫勾去
對所有賬戶使用相同密碼
按提示解決解決
解決交換空間問題
1 #以root使用者 2 [root@localhost ~]# free -m 3 total used free shared buff/cache available 4 Mem: 1824 1239 67 9 517 410 5 Swap: 2047 0 2047 6 [root@localhost ~]# dd if=/dev/zero of=/home/swap bs=1024 count=1024000 7 記錄了1024000+0 的讀入 8 記錄了1024000+0 的寫出 9 1048576000位元組(1.0 GB)已複製,3.82043 秒,274 MB/秒 10 [root@localhost ~]# mkswap /home/swap 11 正在設定交換空間版本 1,大小 = 1023996 KiB 12 無標籤,UUID=d50c7ffb-96c8-40b9-8216-c535391a86f8 13 [root@localhost ~]# free -m 14 total used free shared buff/cache available 15 Mem: 1824 1074 73 2 676 576 16 Swap: 2047 253 1794 17 [root@localhost ~]# swapon /home/swap 18 [root@localhost ~]#
新增相容版本,修改密碼
注意:配置完伺服器端的sqlnet.ora檔案後,務必要重新修改密碼,否則仍登入失敗
1 [oracle@localhost database]$ vim /home/app/oracle/product/12.1.0/db_1/network/admin/sqlnet.ora 2 3 #新增如下內容 4 SQLNET.ALLOWED_LOGON_VERSION=8; 5 6 #oracle12c以上需要改密碼 7 sqlplus / as sysdba 8 alter user 服務名 identified by 密碼;
開放oracle相關埠
1 firewall-cmd --zone=public --add-port=1521/tcp --permanent 2 firewall-cmd --zone=public --add-port=5500/tcp --permanent 3 firewall-cmd --zone=public --add-port=5501/tcp --permanent 4 firewall-cmd --zone=public --add-port=5502/tcp --permanent 5 6 檢視監聽的埠 7 netstat -lnpt 8 9 檢視防火牆狀態 10 firewall-cmd --state 11 12 檢查埠被哪個程序佔用 13 netstat -lnpt |grep 1521 14 15 檢視程序的詳細資訊 16 ps 6832 17 18 中止程序 19 kill -9 6832
設定開機自啟動
1 [oracle@centos7 /]$ vim /etc/oratab 2 gdlisnet:/home/app/oracle/product/12.1.0/db_1:Y 3 [oracle@centos7 bin]$ vim /home/app/oracle/product/12.1.0/bin/dbstart 4 將ORACLE_HOME_LISTNER=$1改成 5 ORACLE_HOME_LISTNER=$ORACLE_HOME 6 [root@centos7 bin]# vim /etc/rc.local 7 su - oracle -c '/home/app/oracle/product/12.1.0/bin/lsnrctl start' 8 su - oracle -c '/home/app/oracle/product/12.1.0/bin/dbstart' 9 [root@centos7 bin]# chmod +x /etc/rc.d/rc.local
同步網路時間
[root@centos7 /]# yum -y install ntp
[root@centos7 /]# ntpdate -u ntp.api.bz
[root@centos7 /]# hwclock –w
lsnrctl status 檢視狀態
lsnrctl start 啟動
lsnrctl stop 停止
常用命令:
sqlplus /nolog //登入sqlplus
connect /as sysdba //連線oracle
startup //起動資料庫
shutdown //關閉資料庫
shutdown immediate
exit //退出sqlplus