Oracle19c 下載地址
Database Software Downloads | Oraclehttps://www.oracle.com/database/technologies/oracle-database-software-downloads.html#db_ee
目錄
?一、準備服務器
1、服務器可以克隆、自己裝
2、修改主機名
3、重啟
4、關閉selinux
5、關閉防火墻
5.1、關閉防火墻
5.2、設置防火墻為禁用開機啟動
5.3、查看防火墻狀態
二、安裝必要依賴包?
三、配置系統參數
四、創建Oracle用戶和目錄
五、?配置Oracle用戶環境變量
六、準備靜默安裝響應文件
?七、執行靜默安裝
八、靜默創建數據庫
?九、驗證安裝
?十、DBeaver連接報監聽問題
10.1、檢查監聽器狀態
10.2、檢查監聽器配置
10.3、檢查防火墻?
10.4、檢查主機名解析?
?10.5、重啟監聽器
?10.6、確認數據庫實例已注冊到監聽器
10.7、驗證遠程連接
?一、準備服務器
1、服務器可以克隆、自己裝
此處省略,自己百度
2、修改主機名
hostnamectl set-hostname hadoop1
vim /etc/hosts
192.168.126.131 hadoop1
3、重啟
reboot?
4、關閉selinux
vim /etc/selinux/config
5、關閉防火墻
5.1、關閉防火墻
systemctl stop firewalld
5.2、設置防火墻為禁用開機啟動
systemctl disable firewalld
5.3、查看防火墻狀態
systemctl status firewalld?
二、安裝必要依賴包?
sudo dnf install -y binutils compat-libcap1 compat-libstdc++-33 gcc gcc-c++ glibc glibc-devel ksh libaio libaio-devel libX11 libXau libXi libXtst libXrender libXrender-devel libgcc libstdc++ libstdc++-devel libxcb make sysstat unzip
三、配置系統參數
# 編輯sysctl.conf
sudo vi /etc/sysctl.conf# 添加以下內容:
fs.file-max = 6815744
kernel.sem = 250 32000 100 128
kernel.shmmni = 4096
kernel.shmall = 1073741824
kernel.shmmax = 4398046511104
net.core.rmem_max = 4194304
net.core.wmem_max = 4194304
net.ipv4.ip_local_port_range = 9000 65500
vm.swappiness = 1
vm.dirty_expire_centisecs = 100
vm.dirty_writeback_centisecs = 100# 應用配置
sudo sysctl -p# 配置用戶限制
sudo vi /etc/security/limits.conf# 添加以下內容:
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384
oracle soft stack 10240
oracle hard stack 32768
四、創建Oracle用戶和目錄
# 創建用戶和組(oracle-database-preinstall-19c可能已創建)
sudo groupadd -g 54321 oinstall
sudo groupadd -g 54322 dba
sudo useradd -u 54321 -g oinstall -G dba oracle
sudo passwd oracle # 設置密碼# 創建安裝目錄并授權
sudo mkdir -p /u01/app/oracle/product/19c/dbhome_1
sudo chown -R oracle:oinstall /u01
sudo chmod -R 775 /u01
五、?配置Oracle用戶環境變量
su - oracle
vi ~/.bash_profile# 添加以下內容:
export ORACLE_HOME=/u01/app/oracle/product/19c/dbhome_1
export ORACLE_SID=orcl
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib
export TMP=/tmp
export TMPDIR=$TMP# 使配置生效
source ~/.bash_profile
六、準備靜默安裝響應文件
# 下載Oracle 19c安裝包(LINUX.X64_193000_db_home.zip)
# 解壓安裝包到ORACLE_HOME目錄
unzip LINUX.X64_193000_db_home.zip -d $ORACLE_HOME# 創建響應文件模板
cd $ORACLE_HOME/install/response
cp db_install.rsp db_install.rsp.backup# 編輯響應文件
vi db_install.rsp# 修改以下關鍵參數:
oracle.install.option=INSTALL_DB_SWONLY
UNIX_GROUP_NAME=oinstall
INVENTORY_LOCATION=/u01/app/oraInventory
ORACLE_HOME=/u01/app/oracle/product/19c/dbhome_1
ORACLE_BASE=/u01/app/oracle
oracle.install.db.InstallEdition=EE
oracle.install.db.OSDBA_GROUP=dba
oracle.install.db.OSOPER_GROUP=dba
oracle.install.db.OSBACKUPDBA_GROUP=dba
oracle.install.db.OSDGDBA_GROUP=dba
oracle.install.db.OSKMDBA_GROUP=dba
oracle.install.db.OSRACDBA_GROUP=dba
DECLINE_SECURITY_UPDATES=true
?七、執行靜默安裝
cd $ORACLE_HOME
./runInstaller -silent -responseFile $ORACLE_HOME/install/response/db_install.rsp# 等待安裝完成(約10-20分鐘)
# 安裝完成后,以root身份運行腳本:
sudo /u01/app/oraInventory/orainstRoot.sh
sudo /u01/app/oracle/product/19c/dbhome_1/root.sh
?注意:執行./runInstaller命令時可能會有個問題:
[INS-08101] Unexpected error while executing the action at state: 'supportedOSCheck'
報錯的主要原因是OS 操作系統不兼容問題
解決方案:
不管是圖形化界面還是靜默安裝,執行前設置 CV_ASSUME_DISTID環境變量,設置該值為RHEL7.6,之后再次運行執行程序或腳本。
export CV_ASSUME_DISTID=RHEL7.6
./runInstaller -silent -responseFile $ORACLE_HOME/install/response/db_install.rsp
八、靜默創建數據庫
# 創建數據庫響應文件
cp $ORACLE_HOME/assistants/dbca/dbca.rsp $ORACLE_HOME/dbca.rsp
vi $ORACLE_HOME/dbca.rsp# 修改以下參數:
responseFileVersion=19.0.0
gdbName=orcl
sid=orcl
databaseConfigType=SI
templateName=General_Purpose.dbc
sysPassword=YourSysPassword123
systemPassword=YourSystemPassword123
datafileDestination=/u01/app/oracle/oradata
recoveryAreaDestination=/u01/app/oracle/fast_recovery_area
storageType=FS
characterSet=AL32UTF8
totalMemory=4096 # 根據內存調整(單位MB)# 執行靜默建庫
dbca -silent -createDatabase -responseFile $ORACLE_HOME/dbca.rsp
?九、驗證安裝
# 檢查數據庫狀態
sqlplus / as sysdba
SQL> SELECT status FROM v$instance;
# 預期輸出:OPEN
?十、DBeaver連接報監聽問題
ORA-12541: Cannot connect. No listener at host 192.168.136.150 port 1521. (CONNECTION_ID=/bA5Fl5eQFG
10.1、檢查監聽器狀態
# 切換到Oracle用戶
su - oracle# 檢查監聽器狀態
lsnrctl status# 如果監聽器未啟動,手動啟動
lsnrctl start
如果啟動失敗,檢查監聽器日志:
日志路徑:$ORACLE_HOME/network/log/listener.log
?
10.2、檢查監聽器配置
確保監聽器配置文件 listener.ora 正確配置:
路徑:$ORACLE_HOME/network/admin/listener.ora
vi $ORACLE_HOME/network/admin/listener.oraLISTENER =(DESCRIPTION_LIST =(DESCRIPTION =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.136.150)(PORT = 1521))(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521)))
-
關鍵點:
-
HOST
?必須填寫服務器實際IP(如?192.168.136.150
),而不是?localhost
?或?0.0.0.0
。 -
確認?
PORT
?為?1521
(默認端口)。
-
10.3、檢查防火墻?
查看防火墻是否關閉
10.4、檢查主機名解析?
確保服務器IP和主機名在?/etc/hosts
?中正確映射:
sudo vi /etc/hosts
?10.5、重啟監聽器
# 停止監聽器
lsnrctl stop# 啟動監聽器
lsnrctl start# 驗證狀態
lsnrctl status
?10.6、確認數據庫實例已注冊到監聽器
監聽器啟動后,檢查數據庫實例是否已自動注冊:
lsnrctl status##輸出中應包含類似以下內容:Service "orcl" has 1 instance(s).Instance "orcl", status READY, has 1 handler(s) for this service...
?如果未注冊,手動注冊:
sqlplus / as sysdba
SQL> ALTER SYSTEM REGISTER;
10.7、驗證遠程連接
##使用sqlplus連接
sqlplus sys/YourPassword@192.168.136.150:1521/orcl as sysdba
?輸入用戶名密碼連接即可
連接成功,則DBeaver也可以正常連接。