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.ora
LISTENER =
(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也可以正常连接。