oracle 19c 初体验

来源:这里教程网 时间:2026-03-03 15:46:29 作者:

    概念理解cdb vs pdb,在以下所示版本列表中12CR2  12.2.0.1以后就有的概念(作者由于没有用过12C,18C),注:如果没有理解这两个概念,可能就无法操作数据库了(与11.2.0.4之前搭建一套环境,安装数据库,就开始操作不同了) Oracle12c版本的说明:  Oracle12cR2=12.2.0.1  Oracle18C=12.2.0.2  Oracle19c=12.2.0.3 来自官方文档:Administrator’s Guide--> Multitenant Administrator's Guide中

    1.1 About the Multitenant Architecture

    The  multitenant architecture enables an Oracle database to function as a multitenant container database (CDB).A  CDB includes zero, one, or many customer-created pluggable databases (PDBs). A  PDB is a portable collection of schemas, schema objects, and nonschema objects that appears to an Oracle Net client as a  non-CDB. All Oracle databases before Oracle Database 12 c were non-CDBs.

    简单一点理解,CDB就是一个容器(或者说实例instance),PDB就是传统的database概念,重要一点就是CDB可以包含多个pdb。如下实例名htdb,CDB就需要到数据库里面查询了

    实操感受,pdb是首次dbca创建数据库时候,提示需要建立的pdb,其他但是系统自带的 安装了数据库,以为sqlplus / as sysdba之后,解锁scott用户,创建数据文件都一一失败了(这就是与11.2.0.4以前不同之处了)。这些操作需要连接指定的pdb才可以,命令alter session set container=pdb19;就代表连接这个pdb19库sqlplus / as sysdba之后,创建用户失败 以为是语法问题,检查了一下,语法没有问题 SQL> show con_name CON_NAME ------------------------------ CDB$ROOT SQL> show pdbs     CON_ID CON_NAME   OPEN MODE  RESTRICTED ---------- ------------------------------ ---------- ---------- 2 PDB$SEED   READ ONLY  YES 3 PDB19   MOUNTED SQL> alter session set container=pdb19   2  ; Session altered. SQL> show con_name CON_NAME ------------------------------ PDB19 SQL> create user longge identified by oracle; create user longge identified by oracle ERROR at line 1: ORA-01109: database not open 提示数据库没有open,从前面show pdbs也可以看到是mount,直接猜测执行以下命令open SQL> alter database open; Database altered. SQL> create user longge identified by oracle;                        User created.以下语句都没有问题,可以看到pdb下面的数据文件,新建表空间 上面用户虽然创建成功,但是要连接pdb好像还差点,如下错误出现 以为是密码简单了不行,后面修改成其他得同样报错,百度一下,需要修改tnsname.ora文件,将pdb名称加入进去使用conn longge/abcd1234@HTDB;连接,如下是修改后得 tnsname.ora文件 又是新错误,给授权一下 SQL> alter session set container=pdb19;

         Session altered.        SQL> grant RESTRICTED SESSION to longge;        3 scott用户与alert日志 有了数据库,得有些数据测试,熟悉得scott用户没有,百度了一下说 pdb中默认不包含scott用户。要运行以下脚本产生 $ORACLE_HOME/rdbms/admin/utlsampl.sql 注:需要修改脚步两处内容      (1) CONNECT SCOTT/tiger     ----- 这个地方需要进行修改增加连接串 ,先配置好 tnsnames.ora     (2)在CONNECT SCOTT/tiger@HTDB前加一行grant RESTRICTED SESSION to scott; 修改后内容如下(标红是修改的,共2行内容): sys用户运行脚本 4 再说说alert日志,位置貌似变了 [oracle@long03s admin]$ cd /home/oracle/patch/rdbms/log[oracle@long03s log]$ ls -lrt |grep alert[oracle@long03s log]$ ls -lrt |grep -i alert[oracle@long03s log]$ ls -lrt |grep -i log-rw-r-----. 1 oracle oinstall   120 May 25 02:19 qopatch.log-rw-r-----. 1 oracle oinstall  6147 May 27 22:04 qopatch_log.log这一看就不像alert日志继续百度一下,提示在这个视图指定的有 看着有个alert感觉这个像,去找找试试,结果被打脸了,不是的 原来在trace目录下( Diag Trace   /u01/app/oracle/diag/rdbms/htdb/htdb/trace) 注:11g 也是在trace目录下 好了,掌握这些估计能基本操作了,先到这里

相关推荐