一、关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
setenforce 0
二、修改主机名
hostnamectl set-hostname oracle
echo "127.0.0.1 oracle" >> /etc/hosts
三、安装Oracle所有依赖
yum install -y binutils gcc gcc-c++ glibc glibc-devel libaio libaio-devel libstdc++ libstdc++-devel make sysstat elfutils-libelf elfutils-libelf-devel ksh compat-libcap1 compat-libstdc++-33 libnsl libnsl-devel unixODBC unixODBC-devel net-tools
报错:Cannot find a valid baseurl for repo: base/7/x86_64
CentOS7源过期
修复:# 进入源目录
cd /etc/yum.repos.d/
备份旧源
mkdir backup
mv *.repo backup/
下载阿里云可用的 CentOS 7 最新源
curl -o CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
清理缓存
yum clean all
yum makecache
重新安装依赖,成功。
四、创建用户和组
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle # 设置密码:q1w2e3@123!!!!!
五、配置内核参数
vi /etc/sysctl.conf
添加以下内容:
fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295
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
生效
sysctl -p
六、配置用户限制
vi /etc/security/limits.conf
添加:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
七、创建安装目录
mkdir -p /opt/oracle/product/19c/dbhome_1
mkdir -p /opt/oracle/oradata
mkdir -p /opt/oraInventory
chown -R oracle:oinstall /opt/oracle
chown -R oracle:oinstall /opt/oraInventory
chmod -R 775 /opt/oracle
八、配置Oracle环境变量
su - oracle
vi .bash_profile
添加:
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=$ORACLE_BASE/product/19c/dbhome_1
export ORACLE_SID=orcl
export PATH=ORACLE_HOME/bin:PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
生效:
source .bash_profile
Exit
九、下载安装包
把 LINUX.X64_193000_db_home.zip 上传到/opt/oracle/product/19c/dbhome_1
cd /opt/oracle/product/19c/dbhome_1
wget -c https://download.oracle.com/otn/linux/oracle19c/190000/LINUX.X64_193000_db_home.zip
授权:
chown -R oracle:oinstall /opt/oracle/product/19c/dbhome_1
十、安装Oracle 19c
1、切换oracle用户
必须切换
为什么不能用 root 装?
- Oracle 强制规定 :只能用 oracle 用户安装
- 用 root 直接装会 直接报错、安装失败、权限全乱
后期数据库无法启动、无法使用
su - oracle
cd /opt/oracle/product/19c/dbhome_1
2、解压
unzip LINUX.X64_193000_db_home.zip
3、静默安装(无图形界面)
./runInstaller -silent -ignorePrereqFailure \
oracle.install.option=INSTALL_DB_SWONLY \
ORACLE_HOSTNAME=oracle \
UNIX_GROUP_NAME=oinstall \
INVENTORY_LOCATION=/opt/oraInventory \
SELECTED_LANGUAGES=en,zh_CN \ ORACLE_HOME=/opt/oracle/product/19c/dbhome_1 \
ORACLE_BASE=/opt/oracle \
oracle.install.db.InstallEdition=EE \
oracle.install.db.DBA_GROUP=dba \
oracle.install.db.OPER_GROUP=dba \
SECURITY_UPDATES_VIA_MYORACLESUPPORT=false \
DECLINE_SECURITY_UPDATES=true
4、退出oracle用户
exit
5、执行脚本
/opt/oraInventory/orainstRoot.sh
/opt/oracle/product/19c/dbhome_1/root.sh
6、创建数据库实例
su - oracle
dbca -silent -createDatabase \
-templateName General_Purpose.dbc \
-gdbname orcl \
-sid orcl \
-SysPassword oracle123 \
-SystemPassword oracle123 \
-DatafileDestination /opt/oracle/oradata \
-RedoLogFileSize 500 \
-StorageType FS \
-CharacterSet AL32UTF8 \
-NationalCharacterSet AL16UTF16
7、启动监听
lsnrctl start
lsnrctl status
8、登录数据库测试
sqlplus / as sysdba
Startup
看到:Database opened.
安装完成