下载
- preinstall yum.Oracle.com/repo/Oracle…
- Oracle 的 rpm 安装包
www.oracle.com/technetwork…
安装配置
-
将安装包上传到服务器某个目录下例如home
-
打开终端,切换root用户,进入安装文件所在目录,执行安装命令:
yum localinstall -y oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm -
执行:
yum localinstall -y oracle-database-ee-19c-1.0-1.x86_64.rpm -
根据实际需要修改配置:
vim /etc/init.d/oracledb_ORCLCDB-19c -
配置数据库:
/etc/init.d/oracledb_ORCLCDB-19c configure,配置完成相当于数据库已经安装完成,接下来启动监听,启动数据库,创建PDB实例. -
配置环境变量
vi /etc/profile,添加内容
export ORACLE_BASE=/opt/oracle
export ORACLE_HOME=/opt/oracle/product/19c/dbhome_1
export NLS_LANG=.AL32UTF8
export ORACLE_SID=SZDB
export PATH=${PATH}:${ORACLE_HOME}/bin/:$ORACLE_HOME/lib64
打开PDB数据库
数据库安装完,配置启动后,默认是会创建一个未打开的pdb
可以直接将这个PDB数据库打开使用
alter pluggable database ORCLPDB1 open ;
切换容器到pdb
alter session set container=ORCLPDB1;
创建用户步骤参考后文创建PDB用户部分
创建PDB数据库
不使用默认创建的PDB数据库,新建一个步骤如下:
- 登录
sqlplus / as sysdba - 指定路径
alter session set db_create_file_dest='/opt/oracle/oradata/'; - 创建 PDB 数据库
create pluggable database SZDB admin user szadmin identified by szadmin456; - 打开 PDB 数据库
alter pluggable database SZDB open ;
其它命令
- 关闭 PDB 数据库
alter pluggable database SZDB close immediate; - 删除 PDB 数据库
drop pluggable database SZDB including datafiles;
PDB用户配置(不配置无法连接)
- 先查询pdb的service_name :
select name,pdb from v$services; vim $ORACLE_HOME/network/admin/tnsnames.ora添加如下内容:ORCLCDB = # 开头这里写CDB实例名称 (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = szdb) # 把查询到刚创建的pdb数据库对应的service_name写到SERVICE_NAME = 之后 ) )
创建PDB用户
- 登录到Oracle
sqlplus / as sysdba - 切换容器到pdb
alter session set container=SZDB; - 查看当前使用容器(确认是否切换成功)
select sys_context ('USERENV', 'CON_NAME') from dual; - 创建用户
create user sz_dbuser identified by sz_dbuser456; - 授权(connect/resource/dba权限)
grant connect,resource,dba to szadmin; - 测试连接
SQL> conn sz_dbuser/sz_dbuser456@ORCLCDB;
其它命令
- 修改密码
alter user sz_dbuser identified by sz_dbuser456; - 删除用户
drop user sz_dbuser CASCADE;
重启服务器后启动 Oracle:
- 切换到 oracle 数据库
su - oracle - 启动监听:
lsnrctl start - 再输入
sqlplus /nolog,回车 - 再输入
conn / as sysdba;回车 - 再输入
startup,回车.这步是启动oracle服务。
备注
- 登录到sys用户或者切换到system用户可以创建用户并授权
- 在CDB容器中创建用户得以C##开头;
create user C##neo identified by neo; - 修改配置文件(字符集设置为ZHS16GBK)
vim /etc/init.d/oracledb_ORCLCDB-19c - 19C要求至少在7.4及以上版本的Liunx系统上安装
问题记录
- ORA-00851: SGA_MAX_SIZE xxx cannot be set to more than MEMORY_TARGET xxx.或其它无法启动的异常情况解决办法
SQL> startup pfile='/opt/oracle/admin/ORCLCDB/pfile/init.ora.66202018375' SQL> create spfile from pfile='/opt/oracle/admin/ORCLCDB/pfile/init.ora.66202018375'; SQL> shutdown immediate SQL> startup - 安装配置完没有指定可连接该数据库的客户端版本,使用低版本客户端连接会报错 ORA-28040:no matching authentication protocol
vi $ORACLE_HOME/network/admin/sqlnet.ora # 添加信息如下 SQLNET.ALLOWED_LOGON_VERSION_SERVER=9 SQLNET.ALLOWED_LOGON_VERSION_CLIENT=9