千家信息网

oracle 12c 中scott账户与表问题

发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,之前安装了12c版本,最近做练习发现怎么没有scott用户和11g自带的emp,dept等等的表。于是尝试解锁用户,发现用户不存在SQL> alter user scott account unloc
千家信息网最后更新 2025年11月07日oracle 12c 中scott账户与表问题

之前安装了12c版本,最近做练习发现怎么没有scott用户和11g自带的emp,dept等等的表。于是尝试解锁用户,发现用户不存在

SQL> alter user scott account unlock;alter user scott account unlock           *ERROR at line 1:ORA-01918: user 'SCOTT' does not exist

手动创建用户,出错,和11g不太一样

SQL> create user scott identified by oracle;create user scott identified by oracle            *ERROR at line 1:ORA-65096: invalid common user or role name

原因和pdb,cdb有关。pdb和cdb是12c的新特性,没有具体学过,不知道是神马意思,不过可以参考这篇文章:http://www.cnblogs.com/tzetze/p/3665903.html


查看错误ORA--65096

SQL>  !oerr ora 6509665096, 00000, "invalid common user or role name"// *Cause:  An attempt was made to create a common user or role with a name//          that wass not valid for common users or roles.  In addition to //          the usual rules for user and role names, common user and role //          names must start with C## or c## and consist only of ASCII //          characters.// *Action: Specify a valid common user or role name.//

在CDB中用户得以C##开头。


试了一下在sql中@/u01/app/oracle/product/12.1.0/db_1/rdbms/admin/utlsampl.sql,也不行,因为里面的用户名有问题


于是自己改写了这个脚本,步骤如下:

当前路径
[oracle@localhost ~]$ pwd
/home/oracle
复制一个副本到当前目录
[oracle@localhost ~]$ cp /u01/app/oracle/product/12.1.0/db_1/rdbms/admin/utlsampl.sql .

重命名文件为scott.sql:
[oracle@localhost ~]$ mv utlsampl.sql scott.sql

修改scott.sql:

主要是将scott用户相关的语句改为c##scott,删除最后的EXIT,修改完的scott.sql如下:

scott.sql

SET TERMOUT OFFSET ECHO OFFDROP USER C##SCOTT CASCADE;create user c##scott identified by tiger;grant connect,resource,unlimited tablespace to c##scott container=all;alter user c##scott default tablespace users;alter user c##scott temporary tablespace temp;CONNECT C##SCOTT/tigerCREATE TABLE DEPT       (DEPTNO NUMBER(2) CONSTRAINT PK_DEPT PRIMARY KEY,    DNAME VARCHAR2(14) ,    LOC VARCHAR2(13) ) ;CREATE TABLE EMP       (EMPNO NUMBER(4) CONSTRAINT PK_EMP PRIMARY KEY,    ENAME VARCHAR2(10),    JOB VARCHAR2(9),    MGR NUMBER(4),    HIREDATE DATE,    SAL NUMBER(7,2),    COMM NUMBER(7,2),    DEPTNO NUMBER(2) CONSTRAINT FK_DEPTNO REFERENCES DEPT);INSERT INTO DEPT VALUES    (10,'ACCOUNTING','NEW YORK');INSERT INTO DEPT VALUES (20,'RESEARCH','DALLAS');INSERT INTO DEPT VALUES    (30,'SALES','CHICAGO');INSERT INTO DEPT VALUES    (40,'OPERATIONS','BOSTON');INSERT INTO EMP VALUES(7369,'SMITH','CLERK',7902,to_date('17-12-1980','dd-mm-yyyy'),800,NULL,20);INSERT INTO EMP VALUES(7499,'ALLEN','SALESMAN',7698,to_date('20-2-1981','dd-mm-yyyy'),1600,300,30);INSERT INTO EMP VALUES(7521,'WARD','SALESMAN',7698,to_date('22-2-1981','dd-mm-yyyy'),1250,500,30);INSERT INTO EMP VALUES(7566,'JONES','MANAGER',7839,to_date('2-4-1981','dd-mm-yyyy'),2975,NULL,20);INSERT INTO EMP VALUES(7654,'MARTIN','SALESMAN',7698,to_date('28-9-1981','dd-mm-yyyy'),1250,1400,30);INSERT INTO EMP VALUES(7698,'BLAKE','MANAGER',7839,to_date('1-5-1981','dd-mm-yyyy'),2850,NULL,30);INSERT INTO EMP VALUES(7782,'CLARK','MANAGER',7839,to_date('9-6-1981','dd-mm-yyyy'),2450,NULL,10);INSERT INTO EMP VALUES(7788,'SCOTT','ANALYST',7566,to_date('13-JUL-87','dd-mm-rr')-85,3000,NULL,20);INSERT INTO EMP VALUES(7839,'KING','PRESIDENT',NULL,to_date('17-11-1981','dd-mm-yyyy'),5000,NULL,10);INSERT INTO EMP VALUES(7844,'TURNER','SALESMAN',7698,to_date('8-9-1981','dd-mm-yyyy'),1500,0,30);INSERT INTO EMP VALUES(7876,'ADAMS','CLERK',7788,to_date('13-JUL-87', 'dd-mm-rr')-51,1100,NULL,20);INSERT INTO EMP VALUES(7900,'JAMES','CLERK',7698,to_date('3-12-1981','dd-mm-yyyy'),950,NULL,30);INSERT INTO EMP VALUES(7902,'FORD','ANALYST',7566,to_date('3-12-1981','dd-mm-yyyy'),3000,NULL,20);INSERT INTO EMP VALUES(7934,'MILLER','CLERK',7782,to_date('23-1-1982','dd-mm-yyyy'),1300,NULL,10);CREATE TABLE BONUS    (    ENAME VARCHAR2(10)    ,    JOB VARCHAR2(9)  ,    SAL NUMBER,    COMM NUMBER    ) ;CREATE TABLE SALGRADE      ( GRADE NUMBER,    LOSAL NUMBER,    HISAL NUMBER );INSERT INTO SALGRADE VALUES (1,700,1200);INSERT INTO SALGRADE VALUES (2,1201,1400);INSERT INTO SALGRADE VALUES (3,1401,2000);INSERT INTO SALGRADE VALUES (4,2001,3000);INSERT INTO SALGRADE VALUES (5,3001,9999);COMMIT;

测试:

sqlplus / as sysdbaSQL> @/home/oracle/scott.sql;SQL> conn c##scott/tigerConnected.SQL> select table_name from user_tables;TABLE_NAME--------------------------------------------------------------------------------SALGRADEBONUSDEPTEMPSQL> select * from SALGRADE;     GRADE    LOSAL       HISAL---------- ---------- ----------     1      700        1200     2     1201        1400     3     1401        2000     4     2001        3000     5     3001        9999


ok!


用户 问题 不行 副本 原因 开头 意思 手动 文件 步骤 版本 特性 用户名 目录 篇文章 脚本 语句 路径 错误 神马 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 mmm服务器在哪 广东web前端软件开发靠谱吗 盐城市网络安全保卫支队 密云区数据网络技术售后服务 计算机网络技术数据流通图 杭州灵息网络技术有限公司 吴震 手机号 软件开发报考一建 青柠直播网赌是哪的服务器 网络安全风险隐患名单 数据库软件开发周记 方舟手游私人服务器管理密码 武器突袭3服务器介绍 华为软件开发云服务技术架构 公共网络安全隐患的案例 主流数据库及其应用实例 软件测试污软件开发的区别 网络安全的好处有什么 手机网页用什么软件开发 java软件开发经理招聘 年画数据库中华木版 南京万米网络技术有限公司 数据库中表示查询的关键字 中山服务器cpu散热器 网络安全典型的网络安全 哪里学软件开发专业 惠山区多功能软件开发项目信息 高级数据库与网络机顶盒 java备份数据库表工具 数据库运维单项选择题 永州市网络安全信息化办公室
0