
一、安装oracle
关闭selinux,如果SELinux status参数为enabled即为开启状态
#查看selinux状态 /usr/sbin/sestatus -v #修改selinux配置 vim /etc/selinux/config #修改为 SELINUX=disabled #然后重启。如果不重启配置则: setenforce 0
1、上传preinstall、preinstall的依赖包以及rpm安装包
2、安装preinstall的依赖包
cd preinstall yum localinstall *.rpm
3、安装preinstall
cd .. yum localinstall oracle-database-preinstall-19c-1.0-1.el7.x86_64.rpm
4、安装oracle
yum localinstall oracle-database-ee-19c-1.0-1.x86_64.rpm
5、查看hosts
vi /etc/hosts #加入 127.0.0.1 localhost
6、配置实例名称等信息
vim /etc/init.d/oracledb_ORCLCDB-19c #按实际情况修改,主要修改字符集: export ORACLE_VERSION=19c export ORACLE_SID=ORCLCDB export TEMPLATE_NAME=General_Purpose.dbc export CHARSET=ZHS16GBK export PDB_NAME=ORCLPDB1 export LISTENER_NAME=LISTENER export NUMBER_OF_PDBS=1 export CREATE_AS_CDB=true
6、初始化,使用root用户进行配置
/etc/init.d/oracledb_ORCLCDB-19c configure
二、配置oracle
1、设置环境变量
[oracle@localhost ~]$ su - oracle [oracle@localhost ~]$ vi .bash_profile #加入如下内容 export ORACLE_BASE=/opt/oracle export ORACLE_HOME=/opt/oracle/product/19c/dbhome_1 export ORACLE_SID=ORCLCDB export PATH=$ORACLE_HOME/bin:$PATH:$HOME/.local/bin:$HOME/bin #使配置生效 [oracle@localhost ~]$ source .bash_profile
2、进入数据库
[oracle@localhost ~]$sqlplus / as sysdba
3、控制监听
#查看状态 lsnrctl status #关闭监听 lsnrctl stop #启动监听 lsnrctl start
4、更改system密码
alter user sys identified by 123456;
5、切换到pdb数据库
SQL> alter session set container=ORCLPDB1; Session altered. SQL> startup Pluggable Database opened.
6、创建临时表空间
create temporary tablespace dbname_temp tempfile '/opt/oracle/oradata/ORCLCDB/ORCLPDB1/dbname_temp.dbf' size 50m autoextend on next 50m maxsize 20480m extent management local;
7、创建表空间
create tablespace dbname datafile '/opt/oracle/oradata/ORCLCDB/ORCLPDB1/dbname.dbf' size 100M reuse autoextend on next 40M maxsize unlimited;
8、创建新用户并指定表空间
Create the user create user dbname identified by 123456 default tablespace dbanme temporary tablespace dbname_temp profile DEFAULT password expire;
9、给dbname 用户赋权
grant connect to dbname with admin option; grant dba to dbname with admin option; grant resource to dbname with admin option; grant unlimited tablespace to dbname with admin option;
ps:新建用户登录第一次,会提示重新设置密码。
三、备份还原
1、备份数据
(1)登录源数据库11g版本的oracle账号,查询有哪些directory
select * from dba_directories
(2)建立导入导出文件夹
$ mkdir -p /home/oracle/bak sql> create directory MYDIR as '/home/oracle/bak';
(3)给orale用户赋读取、写入权
grant read,write on directory MYDIR to dbname;
(4)开始备份
$expdp dbname/dbname@127.0.0.1/orcl directory=MYDIR dumpfile=dbname.dmp schemas=dbname
2、恢复数据
(1)登录源数据库19c版本的oracle账号,查询有哪些directory
select * from dba_directories
(2)建立导入导出文件夹
$ mkdir -p /home/oracle/bak sql> create directory MYDIR as '/home/oracle/bak';
(3)给orale用户赋读写权
grant read,write on directory MYDIR to dbname;
(4)将文件上传到MYDIR(/home/oracle/bak),开始还原
$ impdp dbname/123456@localhost/ORCLPDB1 directory=MYDIR dumpfile=dbname.dmp logfile=dbname.log schemas=dbname;
#关闭数据库: shutdown immediate #启动: startup
四、CDB与PDB 之间的相互切换
1.查看容器
#查看所有容器 SQL> show pdbs #查看现在连接的容器 SQL> show con_name
每次操作前最好查看当前容器是否为目标容器,因为每次重进后会更换容器
2.切换到pdb
SQL> alter session set container=ORCLPDB1; Session altered. SQL> startup
3切换回CDB
SQL> alter session set container=CDB$ROOT; Session altered. SQL> startup
五、表空间操作
1、查看表空间路径
select * from dba_data_files;
2、查询用户所对应的表空间:
select username,default_tablespace from dba_users;
3、删除表空间
#删除空的表空间,但是不包含物理文件 drop tablespace 表空间名; #删除非空表空间,但是不包含物理文件 drop tablespace 表空间名 including contents; #删除空表空间,包含物理文件 drop tablespace 表空间名 including datafiles; #删除非空表空间,包含物理文件 drop tablespace 表空间名 including contents and datafiles;
六、处理字符集
#查看oracle字符集
select userenv('language') from dual;
#修改系统字符集与oracle相同
vi .bash_profile
#加入(根据数据库实际情况配置)
export NLS_LANG="AMERICAN_AMERICA.ZHS16GBK"
#使配置生效
source .bash_profile