Oracle启动
1.登录到Linux服务器,切换到oracle用户权限(命令是:# su –l oracle)
su - oracle
[oracle@localhost ~]$ sqlplus / as sysdba --进入sqlplus界面
2.进入sqlplus界面(命令是:$ sqlplus /nolog 或 sqlplus / as sysdba)
[oracle@localhost ~]$ sqlplus / as sysdba --进入sqlplus界面
或者
[oracle@localhost ~]$ sqlplus /nolog --进入sqlplus界面
SQL*Plus: Release 11.2.0.1.0 Production on Thu Mar 17 10:48:42 2022
Copyright © 1982, 2009, Oracle. All rights reserved.
SQL> conn / as sysdba --sysdba登录
Connected to an idle instance.
SQL> startup --启动数据库实例
ORACLE instance started.
Total System Global Area 1068937216 bytes
Fixed Size 2220200 bytes
Variable Size 281022296 bytes
Database Buffers 780140544 bytes
Redo Buffers 5554176 bytes
Database mounted.
Database opened.
SQL> shutdown immediate --关闭数据库实例
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL>quit --退出
容器数据库启动PDB
根据第2步启动实例,然后查看当前使用的数据库类型,使用如下命令查看数据库类型
select sys_context('USERENV','CON_NAME') from dual;
若是CDB,则需要切换,先查看当前PDB数据库名称
show pdbs;
或者
SQL> select con_id, dbid, guid, name , open_mode from v$pdbs;
CON_ID DBID GUID NAME OPEN_MODE
---------- ---------- -------------------------------- ------------------------------ ----------
2 xx xx PDB$SEED READ ONLY
3 xx xx ORCLPDB MOUNTED
————————————————
注意这里的PDB,在CDB 启动后,PDB 是自动启动到mount状态,而不是OPEN。如果PDB数据库的状态时MOUNTED,是不能进行读写操作的,需要置为OPEN,所以我们还需要手工去open它
当然,也可以通过在CDB中配置触发器来自动open
在Oracle 19c多租户环境中,默认情况下,使用startup命令启动数据库实例后,你会发现PDB数据库的状态为MOUNT状态,PDB不会随着CDB启动而启动。
启动PDB数据库步骤如下:
a.
注意名称大小写,复制,使用语句进行启动,开启PDB数据库,ORCLPDB 是我自己的PDB数据库名,自行替换哈
alter pluggable database ORCLPDB open;
b.
再切换到PDB数据库
alter session set container=ORCLPDB;
c.
再查看当前使用容器
select sys_context('USERENV','CON_NAME') from dual;
d.
扩展
# 开启全部pdb
alter pluggable database all open;
# 关闭所有dpb
alter pluggable database all close;
e.
#切换 oracle 数据库用户有两种方法
#alter session:
#使用 alter session 语法
alter session set current_user = 'hr';
#connect:
#断开当前会话,使用 connect 语法重新连接
connect hr/hr_password as sysdba。
监听
启动监听器
[oracle@localhost ~]$ lsnrctl start
停止监听器命令
[oracle@localhost ~]$ snrctl stop
查看监听器命令
[oracle@localhost ~]$ snrctl status