Oracle-创建用户不带C##(Oracle 19c)
由于oracle从12c开始引入了容器(PDB和CDB)、租户的概念。直接连接sysdba用户创建新用户时,会默认在CDB中创建公有用户,用户名需要以“C##”或“c##”开头。
如果用户名开头不想使用“C##”或“c##”,则需要做如下操作。
(1)使用sysdba管理员用户登录
sqlplus / as sysdba

(2)查看数据库是否为 CDB
select CDB from v$database;

说明:
如果得到的结果为YES,那么就是CDB的数据库,否则,则不是。
在CDB容器中创建用户时,前面必须添加C## ,而PDB数据库不需要加前缀。
(3)查看数据库存在容器
show pdbs ;

(3)启动PDB数据库
alter pluggable database ORCLPDB1 open;

如果出现上面的错误提示,说明PDB已经打开。
(4)切换到ORCLPDB容器
alter session set container=ORCLPDB1;

(5)查看当前使用容器
select sys_context ('USERENV', 'CON_NAME') from dual;

(6)创建用户
CREATE USER dsjzx IDENTIFIED BY "Dsjzx123" ;
用户名:dsjzx 密码: Dsjzx123

注意:密码需要使用双引号包裹起来,避免一些异常错误。
使用单引号会报错: ORA-00988: missing or invalid password(s)
不使用双引号报错:ORA-00922: missing or invalid option
(7)给用户授权
GRANT CONNECT,RESOURCE,UNLIMITED TABLESPACE TO dsjzx CONTAINER=current ;

(8)设置表空间
ALTER USER dsjzx DEFAULT TABLESPACE dsjzx_data ;
ALTER USER dsjzx TEMPORARY TABLESPACE dsjzx_temp ;

如果没有表空间和临时表空间,可以使用下面的语句进行创建:
--创建临时表空间
create temporary tablespace dsjzx_temp
tempfile '/data/oracledata/dsjzx_pdb_temp.dbf'
size 100m
autoextend on
next 100m
maxsize UNLIMITED
extent management local; --创建表空间
create tablespace dsjzx_data
logging
datafile '/data/oracledata/dsjzx_pdb_data.dbf'
size 1G
autoextend on
next 100m
maxsize UNLIMITED
extent management local
Segment space management auto ;
(9)提交
COMMIT;

(10)编辑tnsnames.ora 文件
cd /opt/oracle/product/19c/dbhome_1/network/admin/
vi tnsnames.ora
添加如下内容:
ORCLPDB =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = hadoop04)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ORCLPDB1)
)
)
注意:HOST 后面主机名,需要根据自己的主机进行修改
SERVICE_NAME为PDB的名称,根据自己PDB名称修改。
(11)使用普通用户进行登录
sqlplus /nolog
connect dsjzx@orclpdb1/Dsjzx123

说明: conn <username>@<pdbname>/<password>;
(12)查看当前用户的所有表
--查看当前用户的所有表
SELECT table_name FROM user_tables;
--查看所有表
SELECT table_name FROM all_tables;
--例如: 查看用户dsjzx的所有表
SELECT table_name FROM all_tables WHERE owner = 'DSJZX';
注意:用户名区分大小写,默认为大写。
--查看所有用户的表,普通用户可能没有权限
SELECT table_name FROM dba_tables;
--例如: 查看用户dsjzx的所有表
SELECT table_name FROM dba_tables WHERE owner = 'DSJZX';
Oracle-创建用户不带C##(Oracle 19c)的更多相关文章
- 详解Oracle创建用户权限全过程
本文将介绍的是通过创建一张表,进而实现Oracle创建用户权限的过程.以下这些代码主要也就是为实现Oracle创建用户权限而编写,希望能对大家有所帮助. 注意:每条语语分开执行,结尾必须用分号; // ...
- oracle 创建用户,授权用户,创建表,查询表
原文:oracle 创建用户,授权用户,创建表,查询表 oracle 创建用户,授权用户,创建表,查询表 假设oracle10g所有的都已经安装和配置好 第一步:win+R,进入运行,cmd; 第二步 ...
- Oracle创建用户、表(1)
Oracle创建用户.表(1) 1. 连接 C:\Users\LEI>sqlplus / as sysdba SQL*Plus: Release 12.1.0.2.0 Production on ...
- Oracle创建用户教程
计算机-->管理-->应用程序与服务-->(OracleOraDb11g_home1TNSListener 和 OracleServiceORCL 服务)->启动服务 打开Or ...
- Oracle创建自增字段方法-ORACLE SEQUENCE的简单介绍
引用自 :http://www.2cto.com/database/201307/224836.html Oracle创建自增字段方法-ORACLE SEQUENCE的简单介绍 先假设有这么一个表 ...
- 用sqlplus为oracle创建用户和表空间<转>
用Oracle10g自带的企业管理器或PL/SQL图形化的方法创建表空间和用户以及分配权限是相对比较简单的,本文要介绍的是另一种方法,使用Oracle 9i所带的命令行工具:SQLPLUS来创建表空间 ...
- 用sqlplus为oracle创建用户和表空间
用Oracle自带的企业管理器或PL/SQL图形化的方法创建表空间和用户以及分配权限是相对比较简单的, 本文要介绍的是另一种方法就是使用Oracle所带的命令行工具SQLPLUS来创建表空间. 打开S ...
- oracle创建用户
--首先用管理员的帐户登录(要有修改用户的权限)system,默认数据库orcl. CREATE USER lcs IDENTIFIED BY lcs default tablespace lics_ ...
- oracle 创建用户和imp指定表空间
创建用户: 1,sqlplus sys/pwd as sysdba; 2, create user username identified by password; 3, grant dba,conn ...
- oracle创建用户、授予权限及删除用户
创建用户 oracle对表空间 USERS 无权限 alter user 用户名 quota unlimited on users; //创建临时表空间 create temporary ta ...
随机推荐
- B3637-DP【橙】
这题我用sort的时候大意了,从1开始使用的下标但是用sort时没加1导致排序错误,排了半天错才发现. 另外,这道题我似乎用了一种与网络上搜到了做法截然不同的自己的瞎想出来的做法,我的这个做法需要n^ ...
- Liunx运维(四)-文本处理三剑客:grep、sed、awk
文档目录: 一.grep:文本过滤工具 二.sed:字符流编辑器 三.awk:文本分析工具 ---------------------------------------分割线:正文--------- ...
- 运筹学 | 退化的最优解 vs 无穷多最优解?
退化的最优解: 单纯形表的基可行解中,出现等于零的基变量.或者,按最小比值来确定出基向量时,存在两个以上相同最小比值. 出现的原因:模型中存在多余的约束. 无穷多最优解: 单纯形表中,按最大检验数 σ ...
- 深入理解Kafka核心设计及原理(一):初识Kafka
转载请注明出处: 1.1 kafka简介 Kafka 起初是由 Linkedin 公司采用 Scala 语言开发的一个多分区.多副本且基于 ZooKeeper协调的分布式消息系统,现己被捐献给 Apa ...
- 在Winform系统开发中,使用MediatR来实现类似事件总线的消息处理
MediatR是一款进程内的消息订阅.发布框架,可实现请求/响应.命令.查询.通知和事件的消息传递,解耦了消息处理器和消息之间耦合.提供了Send方法用于发布到单个处理程序.Publish方法发布到多 ...
- Oracle 高低水位线的学习
Oracle 高低水位线的学习 背景 最近产品的一些脚本会大量的给一些流程表里面插入数据 因为只是一个流程相关没有时序查询的需求 所以数据量挺大, 但是按照石时间戳删除非常麻烦. 自己执行过多次del ...
- [转帖]挂载文件系统选项nodiratime、noatime
默认的方式下linux会把文件访问的时间atime做记录,文件系统在文件被访问.创建.修改等的时候记录下了文件的一些时间戳,比如:文件创建时间.最近一次修改时间和最近一次访问时间:这在绝大部分的场合都 ...
- 【转帖】ethool工具之TSO、UFO、GSO、LRO、GRO和RSS介绍
ethtool -k < 网络接口>, ethtool --show-offload < 网络接口>, 或者可以看到很多网络接口的offload特性,例如: $ sudo et ...
- [转帖]技术派-汇编语言指令集(intel X86系列)
针对汇编语言指令集(intel X86系列8086/80186/80286/80386/80486) AAA - Ascii Adjust for Addition AAD - Asci ...
- Rsync的简单使用
Rsync的简单使用 需求 一个运行很久的系统里面可能包含了非常多的垃圾文件. 但是又不可能随便删除, 很多垃圾可能有某些奇葩的用法. 有时候新建一个应用复制文件的话比较浪费磁盘和带宽. 所以这里简单 ...