<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
Linux我們預設使用CentOS 7 x64
所以為了對應作業系統我們使用64位元的Oracle 11g資料庫
Oracle11g需要準備至少:2核CPU、2G記憶體、8GB的硬碟空間
lscbu
free -h
lsblk
確保伺服器能存取外網
檢視是否有 oracle 的程序
ps -ef | grep ora
檢查是否有oracle使用者
# 一般安裝oracle的時候預設會建一個oracle使用者 id oracle
因為Oracle的解除安裝極其麻煩,從效率上講甚至不如直接重新安裝虛擬機器器
Oracle的安裝需要圖形化介面,所以身為命令形式的Linux作業系統就需要安裝圖形化介面:VNC;
為了安全起見,不建議使用root做為vnc使用者,所以,安裝oracle時要建立單獨的使用者去安裝oracle相關
# 在Linux中建立名為oinstall的使用者組 groupadd oinstall # 建立dba使用者組 groupadd dba # 建立oper使用者組 groupadd oper # 為dba和oper使用者組建立oracle使用者 # -g 主使用者組 # -G 附加組 useradd -g oinstall -G dba,oper oracle # 將oracle使用者的密碼設定為oracle echo "oracle"|passwd oracle --stdin
# 建資料夾 mkdir -p /u01/app/oracle/product/11.2.0/db_1 # 改變屬主和屬組 chown -R oracle:oinstall /u01/app # 為資料夾授權 chmod -R 775 /u01/app
vim /etc/sysctl.conf # 新增如下內容 fs.aio-max-nr = 1048576 fs.file-max = 6815744 kernel.shmall = 2097152 # kernel.shmmax 引數設定為實體記憶體的一半 kernel.shmmax = 1200000000 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 # 因為剛自定義設定了shmmax、shmmni、shmall,所以註釋掉原有自帶的shmmax、shmall這些屬性
儲存並退出後,需要使使引數生效
sysctl -p
為了優化效能,需要新增oracle使用者的限制引數
vim /etc/security/limits.conf # 在檔案末尾新增下面四行 # 設定程序數軟限制 oracle soft nproc 2047 # 設定程序數硬限制 oracle hard nproc 16384 # 設定檔案數軟限制 oracle soft nofile 1024 # 設定檔案數硬限制 oracle hard nofile 65536 # 程序對談限制可以採用pam_limits認證模組來實現,通過修改登入程式login的PAM設定以啟用該認證 vim /etc/pam.d/login # 在檔案最後新增下面一行 session required /lib64/security/pam_limits.so # 一般都是64位元系統,64位元系統需要設定為/lib64/security/pam_limits.so 否則重啟伺服器後就會出現命令列無法登入,但是通過桌面方式能登入的情況 session required pam_limits.so
使引數生效
source /etc/profile
su - oracle vim .bash_profile # 新增如下內容 ORACLE_BASE=/u01/app/oracle ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1 PATH=$PATH:$ORACLE_HOME/bin ORACLE_SID=orcl NLS_LANG="SIMPLIFIED CHINESE_CHINA.UTF8" export ORACLE_BASE ORACLE_HOME ORACLE_SID PATH if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi fi
退出後需要重新整理環境變數
source .bash_profile 或 source /home/oracle/.bash_profile
安裝oracle時,一定要保證主機名出現在/etc/hosts中
vim /etc/hosts # 新增如下內容 127.0.0.1 localhost 192.168.222.30 mydb
測試hostname
ping -c 3 mydb
/etc/sysconfig/network中的hostname要與/etc/hosts中的一致
vim /etc/sysconfig/network # 新增如下內容 NETWORKING=yes HOSTNAME=mydb # 伺服器IP GATEWAY=192.168.222.30 NTPSERVERARGS=iburst
cd /etc mv yum.repos.d yum.repos.d.bak mkdir yum.repos.d wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo # 清除快取 yum clean all # 建快取 yum makecache #安裝epel源 yum -y install epel-release
#圖形介面必備`X Window System` yum -y groupinstall "X Window System" #安裝VNC+圖形、oracle需要的依賴(軟體) 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 libXp
4.7.3 檢查依賴是否安裝完成
rpm -q binutils compat-libstdc++-33 elfutils-libelf elfutils-libelf-devel expat gcc gcc-c++ glibc glibc-common glibc-devel glibc-headers libaio libaio-devel libgcc libstdc++ libstdc++-devel make pdksh sysstat unixODBC unixODBC-devel | grep "not installed"
方法一:通過yum安裝
yum -y install pdksh(安裝失敗的package)
方法二:wget命令直接下載pdksh的rpm包,下載到至/tmp/
wget -O /tmp/pdksh-5.2.14-37.el5_8.1.x86_64.rpm http://vault.centos.org/5.11/os/x86_64/CentOS/pdksh-5.2.14-37.el5_8.1.x86_64.rpm # 安裝pdksh rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm
伺服器&VNC&Oracle安裝包語言要統一,這裡我使用的是中文安裝包,為避免中文亂碼,需要安裝中文語言套件(如果你都是英文可以忽略此步驟)
—————上傳方法—————
# 1.切換至oracle安裝目錄 cd /u01/ # 2.將檔案上傳至伺服器 rz/sz # 或 shell工具拖拉拽 # 或 # --------------------------------------------------------------- scp -r /Users/nan/Desktop/Oracle root@10.10.1.104:/opt/test/ # 解析 scp -r dir username@host:dir 命令 遞迴 要拷貝的檔案路徑 目的主機使用者名稱@目的主機ip:目的路徑 # --------------------------------------------------------------- # 3.安裝中文字型包 yum –y install pdksh-5.2.14-37.el5_8.1.x86_64.rpm
防火牆放行VNC埠5901和Oracle預設埠1521
編輯iptables, 開放1521埠:
sudo vi /etc/sysconfig/iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 1521 -j ACCEPT
重啟防火牆
sudo service iptables restart
儲存設定,以便linux重啟後依然有效
sudo service iptables save
檢視防火牆規則:
sudo iptables -L –n
service iptables stop chkconfig iptables off vim /etc/sysconfig/selinux SELINUX=enforcing改成SELINUX=disabled
切換使用者並切換目錄
xhost + su - oracle cd /u01/sw
上傳Linux-x86-64_1of7.zip和Linux-x86-64_2of7.zip檔案至/u01/sw目錄上傳方法
解壓縮安裝檔案
unzip linux.x64_11gR2_database_1of2.zip unzip linux.x64_11gR2_database_2of2.zip
完成後切換root使用者,複製授權
su - root mkdir /home/oracle/etc/ cp /db/database/response/* /home/oracle/etc/ chmod 777 /home/oracle/etc/*.rsp
登入oracle使用者
su – oracle vi /home/oracle/etc/db_install.rsp # 資訊如下: oracle.install.option=INSTALL_DB_SWONLY UNIX_GROUP_NAME=oinstall INVENTORY_LOCATION=/db/app/oracle/oraInventory SELECTED_LANGUAGES=en,zh_CN ORACLE_HOSTNAME=oracle ORACLE_HOME=/db/app/oracle/product/11.2.0/db_1 ORACLE_BASE=/db/app/oracle oracle.install.db.InstallEdition=EE oracle.install.db.isCustomInstall=true oracle.install.db.DBA_GROUP=dba oracle.install.db.OPER_GROUP=oinstall oracle.install.db.config.starterdb.type=GENERAL_PURPOSE oracle.install.db.config.starterdb.globalDBName=orcl oracle.install.db.config.starterdb.SID=orcl oracle.install.db.config.starterdb.memoryLimit=512 oracle.install.db.config.starterdb.password.ALL=oracle DECLINE_SECURITY_UPDATES=true
執行Oracle安裝檔案
su - oracle ./runInstaller -silent -force -responseFile /home/oracle/etc/db_install.rsp -ignorePrereq
安裝期間可以使用tail命令監看oracle的安裝紀錄檔
cd /db/app/oracle/oraInventory/logs/ tail -f installActions2021-11-10_10-38-29AM.log
安裝完成,提示Successfully Setup Software
使用root使用者執行指令碼
su - root/db/app/oracle/product/11.2.0/db_1/root.sh
su - oracle vi ~/.bash_profile export ORACLE_HOME=/db/app/oracle/product/11.2.0/db_1 export TNS_ADMIN=$ORACLE_HOME/network/admin export PATH=.:${PATH}:$HOME/bin:$ORACLE_HOME/bin export PATH=${PATH}:/usr/bin:/bin:/usr/local/bin export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/lib export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:$ORACLE_HOME/oracm/lib export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/lib:/usr/lib:/usr/local/lib export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/jlib export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/rdbms/jlib export CLASSPATH=${CLASSPATH}:$ORACLE_HOME/network/jlib export LIBPATH=${CLASSPATH}:$ORACLE_HOME/lib:$ORACLE_HOME/ctx/lib export ORACLE_OWNER=oracle export SPFILE_PATH=$ORACLE_HOME/dbs export ORA_NLS10=$ORACLE_HOME/nls/data
使設定生效
source ~/.bash_profile
設定監聽
# 確保在oracle目錄的bin下 pwd /db/app/oracle/product/11.2.0/db_1/bin ./netca /silent /responseFile /home/oracle/etc/netca.rsp
啟動監聽
# 確保在oracle目錄的bin下 pwd /db/app/oracle/product/11.2.0/db_1/bin # 啟動監聽 lsnrctl start # 檢視監聽狀態 lsnrctl start LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 25-MAY-2019 00:13:21 Copyright (c) 1991, 2009, Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1522))) STATUS of the LISTENER ------------------------ Alias LISTENER Version TNSLSNR for Linux: Version 11.2.0.1.0 - Production Start Date 25-MAY-2019 00:05:55 Uptime 0 days 0 hr. 7 min. 32 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File /db/app/oracle/product/11.2.0/db_1/network/admin/listener.ora Listener Log File /db/app/oracle/diag/tnslsnr/oracle/listener/alert/log.xml Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC1522))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=oracle)(PORT=1522))) The listener supports no services The command completed successfully
監聽狀態
lsnrctl start # 顯示如下 LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 25-MAY-2019 00:13:21 Copyright (c) 1991, 2009, Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1522)))
編輯應答檔案
vi /etc/dbca.rsp GDBNAME="orcl.oracle" SID="orcl" SYSPASSWORD = "oracle" SYSTEMPASSWORD = "oracle" CHARACTERSET="AL32UTF8" NATIONALCHARACTERSET="UTF8" # 執行: $ORACLE_HOME/bin/dbca -silent -responseFile /home/oracle/etc/dbca.rsp
建庫
pwd /db/app/oracle/product/11.2.0/db_1/bin dbca -silent -responseFile etc/dbca.rsp # 至此完成資料庫範例的建立
設定Oracle開機啟動
vim /etc/oratab # 把「N」改成「Y」 orcl:/db/app/oracle/product/11.2.0/db_1:Y
[oracle@oracle bin]$ vi /etc/oratab orcl:/db/app/oracle/product/11.2.0/db_1:Y # //把「N」改成「Y」 # 儲存退出 [oracle@oracle bin]$ pwd /db/app/oracle/product/11.2.0/db_1/bin # 通過dbstart 啟動此範例,監聽器 ## ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener ## Usage: ./dbstart ORACLE_HOME [oracle@oracle bin]$ ./dbstart $ORACLE_HOME; # oracle的程序關閉,監聽器也停止; [oracle@oracle bin]$ ./dbshut $ORACLE_HOME; # 啟動監聽 [oracle@oracle bin]$ ./lsnrctl start; # 檢視監聽 [oracle@oracle bin]$ ./lsnrctl status
[oracle@oracle bin]$ pwd /db/app/oracle/product/11.2.0/db_1/bin [oracle@oracle bin]$ ./sqlplus /nolog # 進入系統管理使用者 SQL> conn / as sysdba Connected to an idle instance. # 啟動oracle範例 SQL> startup;
1、使用oracle使用者登入桌面,開啟終端執行安裝程式
[root@oracledb ~] cd /ora/database [root@oracledb ~] ./runInstaller
1)訂閱郵件跳過
2)選擇忽略更新(或者讓選擇桌面版還是伺服器版,如果有選擇伺服器版)
3)這裡選擇僅安裝資料庫,稍後再設定初始化資料。
4):選擇單範例安裝。
5):語言,linux伺服器上就別想什麼中文這些了,就預設英文完事。
6):預設
7):這裡就出現最開始建立的相應目錄資訊了,會自動讀取。
8):下一步
9):選擇group 組為之前建立好的oinstall
10):安裝的過程中可能會出現如下的一些警告資訊,如提示semmni為0 的問題,該問題一直沒有找到原因,我們在上面修改核心的過程中就已經調整了kernel.sem = 250 32000 100 128 但是檢測無法通過(暫時無解)、其他的一些依賴元件提示,其實我們已經安裝好了,只是centos7上yum安裝的依賴包要比oracle 11g 所需的包更新,版本更高,所以可以直接忽略這些提示(勾選 ignore all)。
3、安裝到最後的時候會出現一個提示:需要用root許可權執行2個shell指令碼,那麼我們在之前的root使用者終端下執行提示中的對應指令碼檔案即可。
這裡或者更早前的步驟就可能會出現一個很神奇(zhizhang)的問題,對話方塊可能無法正常彈出,測試在VM虛擬機器器或者雲伺服器,如阿里雲等都這樣,但是用滑鼠可以拖開。是的,你沒有看錯,直接拖出對話方塊。這個問題不知道原因,有知道的朋友請留言告知,萬分感謝。
還有可能出現一個壓根兒就不能拖得對話方塊(阿里雲上反覆測試,就是會出現)最後沒轍了,本地跑虛擬機器器一步步的模擬安裝,發現是一個警告提示,一般按4次tab鍵即可切換到下一步選項回車即可。
4、安裝完成後還需要建立資料庫,還是同樣在Oracle使用者桌面環境下,重新開啟一個終端,輸入 dbca 命令即可彈出相應的資料庫建立嚮導。
如果提示沒有這個命令,那麼請詳細檢查一下上述的依賴包是否正確安裝,另外建立過程中如果出現提示oracle not available 檢查是否已新增主機名到hosts檔案中。
到此這篇關於Linux CentOS7安裝Oracle11g的文章就介紹到這了,更多相關Linux CentOS7安裝Oracle11g內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45