一.安装前准备

 oracle官方安装指导文档 MOS账号登录

主流操作系统和oracle版本支持列表

oracle版本

linux版本 

windows版本

19c

oracle linux/redhat  7

2012R2~2019

资源规划 

资源 2C8G 100G

oracle linux 7 x86

192.168.77.181 oracledb

oracle 19c

目录规划

ORACLE_BASE目录:/opt/oracle
ORACLE_HOME目录:/opt/oracle/product/19c/dbhome_1
  • 1.
  • 2.

1.安装前准备

#配置hosts
hostnamectl set-hostname oracledb
cat >>/etc/hosts<<'EOF'
192.168.77.181 oracledb
EOF
#关闭SELINUX和防护墙
systemctl disable firewalld
systemctl stop firewalld
sed -i 's/^SELINUX=enforcing$/SELINUX=disabled/' /etc/selinux/config
setenforce 0
#关闭NetworkManager
systemctl stop NetworkManager
systemctl disable NetworkManager
#关闭透明大页和NUMA,内存大于32G,可以不关闭大页
echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabled
sed -i '/^GRUB_CMDLINE_LINUX/d' /etc/default/grub
cat >> /etc/default/grub<<'EOF'
GRUB_CMDLINE_LINUX="crashkernel=auto rhgb quiet numa=off"
EOF
grub2-mkconfig -o /etc/grub2.cfg
#使用系统镜像包 配置yum源
mount /dev/cdrom /mnt
cd /etc/yum.repos.d/
gzip *.repo
cat >redhat.repo<<'EOF'
[redhat7]
name=redhat7
baseurl=file:///mnt
gpgcheck=0
enable=1
EOF
#安装依赖
yum -y install compat-libstdc++-33 ksh libaio-devel
#重启
reboot
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.

二.云数据库模式安装

1.预安装

#root用户登录
#上传预安装包到任意目录
cd /root
rz oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm
#安装
rpm -ivh oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm
#设置oracle密码
echo 123456 | passwd --stdin oracle
#创建目录并授权
mkdir -p /opt/oracle
chown -R oracle:oinstall /opt/oracle
chmod -R 775 /opt/oracle
#环境变量配置
su - oracle
cat >> ~/.bash_profile<<'EOF'
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=/opt/oracle/product/19c/dbhome_1
export ORACLE_UNQNAME=ALICDB
export ORACLE_SID=ALICDB
export NLS_LANG="AMERICAN_AMERICA.ZHS16GBK"
export PATH=$PATH:$ORACLE_HOME/bin
export CLASSPATH=$CLASSPATH:$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib
EOF
source ~/.bash_profile
exit
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.

2.安装数据库软件

#root用户
#上传数据库安装包到任意目录
cd /root
rz oracle-database-ee-19c-1.0-1.x86_64.rpm
#安装
rpm -ivh oracle-database-ee-19c-1.0-1.x86_64.rpm
#安装完成提示,root用户执行脚本,这里不执行,默认的/etc/init.d/oracledb_ORCLCDB-19c configure
#自定义实例名为ALICDB,PDB名为ALIPDB1
cd /etc/sysconfig
cp oracledb_ORCLCDB-19c.conf oracledb_ALICDB-19c.conf
cd /etc/init.d
cp oracledb_ORCLCDB-19c oracledb_ALICDB-19c
sed -i 's/ORCLCDB/ALICDB/g' oracledb_ALICDB-19c
sed -i 's/ORCLPDB1/ALIPDB1/g' oracledb_ALICDB-19c
sed -i 's/CHARSET=AL32UTF8/CHARSET=ZHS16GBK/g' oracledb_ALICDB-19c
#数据库配置(dbca的过程)
/etc/init.d/oracledb_ALICDB-19c configure
#安装完成提示,密码自动生成的,需要更改使用sqlplus / as sysdba连接后更改,稍后更改
su - oracle
sqlplus / as sysdba
alter user sys identified by Alibaby007;
alter user system identified by Alibaby007;
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.

3.数据库启停

#oracle用户
su oracle
#监听状态查看
lsnrctl status
#查看实例进程
ps -ef | grep smon
#root用户
#Usage: /etc/init.d/oracledb_ALIDB-19c {start|stop|restart|configure|delete}
#停止
/etc/init.d/oracledb_ALICDB-19c stop
#启动
/etc/init.d/oracledb_ALICDB-19c start
#pdbs插件数据库关闭和打开
#登录后关闭
sqlplus / as sysdba
show pdbs;
alter pluggable database all close;
shutdown immediate;
exit
#####开启数据库######
#登录后开启
sqlplus / as sysdba
startup
alter pluggable database all open;
exit
#开启监听
lsnrctl start
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.

4.基本操作

#版本diag日志和datafile路径查看
su - oracle
sqlplus / as sysdba
select * from v$version;
select * from v$diag_info;
select name from v$datafile;
#连接PDB数据库
show pdbs;
show con_name;
alter session set container=ALIPDB1;
show con_name;
#创建表空间
create tablespace ALI datafile '/opt/oracle/oradata/ALICDB/ALIPDB1/ALI01.dbf' size 128M autoextend on next 100M maxsize unlimited;
#创建用户
create user "ALI" identified by "Alibaby007" default tablespace ALI;
grant dba to ALI;
exit
#PDB用户登录前,需要配置监听tnsnames.ora,以ALIPDB1对外服务
cd $ORACLE_HOME/network/admin
cat >>tnsnames.ora<<'EOF'
ALIPDB1 =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = oracledb)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = ALIPDB1)
    )
  )
EOF
#连接数据库
sqlplus / as sysdba
conn ALI/Alibaby007@ALIPDB1
show con_name;
#创建数据库对象
CREATE TABLE city(city_id CHAR(3) NOT NULL,city_name VARCHAR(40) NULL,region_id INT NULL);
INSERT INTO city(city_id,city_name,region_id) VALUES('BJ','北京',1);
INSERT INTO city(city_id,city_name,region_id) VALUES('SH','上海',2);
INSERT INTO city(city_id,city_name,region_id) VALUES('NJ','南京',2);
commit;
select * from city;
exit
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 35.
  • 36.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.

数据库连接工具连接ALIPDB1插件数据库和容器数据库ALICDB

oracle 19c  rpm静默安装 云数据库模式及传统模式_数据库

取消口令180天过期限制

#连接数据库
sqlplus / as sysdba
#查看用户状态,过期时间
select username,account_status,expiry_date,profile from dba_users;
#查看口令有效期
select * from dba_profiles where profile='DEFAULT' and resource_name='PASSWORD_LIFE_TIME';
#更改口令有效期不限制
alter profile default limit password_life_time unlimited;
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.

三.传统模式安装

1.预安装

#root用户登录
#上传预安装包到任意目录
cd /root
rz oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm
#安装
rpm -ivh oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm
#设置oracle密码
echo 123456 | passwd --stdin oracle
#创建目录并授权
mkdir -p /opt/oracle
chown -R oracle:oinstall /opt/oracle
chmod -R 775 /opt/oracle
#环境变量配置
su - oracle
cat >> ~/.bash_profile<<'EOF'
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=/opt/oracle/product/19c/dbhome_1
export ORACLE_UNQNAME=ALIDB
export ORACLE_SID=ALIDB
export NLS_LANG="AMERICAN_AMERICA.ZHS16GBK"
export PATH=$PATH:$ORACLE_HOME/bin
export CLASSPATH=$CLASSPATH:$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib
EOF
source ~/.bash_profile
exit
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.

2.安装数据库软件

#root用户
#上传数据库安装包到任意目录
cd /root
rz oracle-database-ee-19c-1.0-1.x86_64.rpm
#安装
rpm -ivh oracle-database-ee-19c-1.0-1.x86_64.rpm
#安装完成提示,root用户执行脚本,这里不执行,默认的/etc/init.d/oracledb_ORCLCDB-19c configure
#自定义全局实例名和数据库名为ALICDB
cd /etc/sysconfig
cp oracledb_ORCLCDB-19c.conf oracledb_ALIDB-19c.conf
cd /etc/init.d
cp oracledb_ORCLCDB-19c oracledb_ALIDB-19c
sed -i 's/ORCLCDB/ALIDB/g' oracledb_ALIDB-19c
sed -i 's/CHARSET=AL32UTF8/CHARSET=ZHS16GBK/g' oracledb_ALIDB-19c
sed -i 's/CREATE_AS_CDB=true/CREATE_AS_CDB=false/g' oracledb_ALIDB-19c
#数据库配置(dbca的过程)
/etc/init.d/oracledb_ALIDB-19c configure
#安装完成提示,密码自动生成的,需要更改使用sqlplus / as sysdba连接后更改
su - oracle
sqlplus / as sysdba
alter user sys identified by Alibaby007;
alter user system identified by Alibaby007;
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.

3.数据库启停

#oracle用户
su oracle
#监听状态查看
lsnrctl status
#查看实例进程
ps -ef | grep smon
#root用户
#Usage: /etc/init.d/oracledb_ALIDB-19c {start|stop|restart|configure|delete}
#停止
/etc/init.d/oracledb_ALIDB-19c stop
#启动
/etc/init.d/oracledb_ALIDB-19c start
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.

4.基本操作

oracle启停

#oracle用户登录
su - oracle
#查看监听
lsnrctl status
#####关闭数据库######
#关闭监听
lsnrctl stop
#登录后关闭
sqlplus / as sysdba
alter system switch logfile;
alter system checkpoint;
shutdown immediate;
exit
#####开启数据库######
#登录后开启
sqlplus / as sysdba
startup
alter system register;
exit
#开启监听
lsnrctl start
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.

基本操作

#版本diag日志和datafile路径查看
su - oracle
sqlplus / as sysdba
select * from v$version;
select * from v$diag_info;
select name from v$datafile;
#创建表空间
create tablespace ALI datafile '/opt/oracle/oradata/ALIDB/ALI01.dbf' size 128M autoextend on next 100M maxsize unlimited;
#创建用户
create user "ALI" identified by "Alibaby007" default tablespace ALI;
grant dba to ALI;
#连接数据库
conn ALI/Alibaby007
#创建数据库对象
CREATE TABLE city(city_id CHAR(3) NOT NULL,city_name VARCHAR(40) NULL,region_id INT NULL);
INSERT INTO city(city_id,city_name,region_id) VALUES('BJ','北京',1);
INSERT INTO city(city_id,city_name,region_id) VALUES('SH','上海',2);
INSERT INTO city(city_id,city_name,region_id) VALUES('NJ','南京',2);
commit;
select * from city;
exit
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.

日志查看

su - oracle
sqlplus / as sysdba
#查找Diag Trace路径
select * from v$diag_info;
exit
cd /opt/oracle/diag/rdbms/alidb/ALIDB/trace
#重点查看ORA-
grep ORA- alert_ALIDB.log
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.

5.数据库连接工具连接ALIDB数据库

oracle 19c  rpm静默安装 云数据库模式及传统模式_oracle_02

6.数据库卸载

#root用户
yum -y remove oracle-database-ee-19c
#图形化界面卸载
#oracle用户
su - oracle
#数据库删除
cd $ORACLE_HOME/bin
./dbca
#监听删除
cd $ORACLE_HOME/bin
./netca
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.