Linux系统下连接Oracle数据库,创建新的数据库用户及分配权限
来源:互联网 发布:装修花费知乎 编辑:程序博客网 时间:2024/05/15 04:54
一、打开SecureCRT5.1,连接到虚拟机服务器192.168.234.181
用户名/口令 root/123456
1.从root用户切换到oracle用户
[root@oradb ~]# su - oracle
2.用sysdba用户登陆sqlplus
[oracle@oradb ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.3.0 Production on Tue Nov 1 18:28:10 2016
Copyright (c) 1982, 2011, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
3创建新的数据库用户hzpplsql口令hzpplsql
SQL> create user hzpplsql identified by hzpplsql
2 ;
User created.
4.此时尝试用刚创建的用户hzpplsql登陆:报错缺少权限。拒绝登陆。
补充:我们新建立一个用户之后,如果未进行任何权限的赋予,该用户甚至连登录的权限都没有。此时,我们需要赋予该用户create session的系统权限(或者connect角色),才能实现登录。
SQL> conn hzpplsql/hzpplsql@orcal
ERROR:
ORA-01045: user HZPPLSQL lacks CREATE SESSION privilege; logon denied
5.尝试授权,报错:没有连接。排查:查看当前用户为"空",即需要重新登陆
SQL> grant create session to hzpplsql;
SP2-0640: Not connected
SQL> show user;
USER is ""
6.重新连接sysdba登陆,再次授权,授权成功。
SQL> conn / as sysdba
Connected.
SQL> show user;
USER is "SYS"
SQL> grant create session to hzpplsql;
Grant succeeded.
//此时新用户hzpplsql就可以登陆了
SQL> conn hzpplsql/hzpplsql@orcal;
Connected.
//但是做任何事情的权限还是没有
SQL> create table t (id number);
create table t (id number)
*
ERROR at line 1:
ORA-01031: insufficient privileges
7.为用户hzpplsql授予DBA权限
切换到sysdba用户:
SQL> conn / as sysdba;
Connected.
SQL> grant resource,connect,dba to hzpplsql;
Grant succeeded.
补充:
对于普通用户:授予connect, resource权限。
对于DBA管理用户:授予connect,resource, dba权限。
DBA: 拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构。sysdba角色之外权限最大的角色
RESOURCE:拥有Resource权限的用户只可以创建实体,不可以创建数据库结构。
CONNECT:拥有Connect权限的用户只可以登录Oracle,不可以创建实体,不可以创建数据库结构。
8.查看用户hzpplsql目前拥有的权限
切换到hzpplsql用户
SQL> select * from user_sys_privs;
USERNAME PRIVILEGE ADM
------------------------------ ---------------------------------------- ---
HZPPLSQL UNLIMITED TABLESPACE NO
HZPPLSQL CREATE SESSION NO
SQL> select * from user_role_privs;
USERNAME GRANTED_ROLE ADM DEF OS_
------------------------------ ------------------------------ --- --- ---
HZPPLSQL CONNECT NO YES NO
HZPPLSQL DBA NO YES NO
HZPPLSQL RESOURCE NO YES NO
补充:查看当前登陆用户的权限(系统、对象、角色)
select * from user_sys_privs;
select * from user_role_privs;
select * from user_tab_privs;
二、数据库环境已经创建好,具有DBA权限的用户hzpplsql,开始进行《Oracle PL/SQL攻略》的学习与练习
D:\myplsqltest\oracle-pl-sql-recipes-master\Oracle PL SQL Recipes\sources\hr进入目录,然后打开命令行终端CMD。执行如下命令:
1.通过SQL*PLUS连接到数据库,用刚刚新建的用户hzpplsql
sqlplus hzpplsql/hzpplsql@HZPEN181
2.执行上面目录下的sql脚本
@hr_main.sql
执行结果如下:
D:\myplsqltest\oracle-pl-sql-recipes-master\Oracle PL SQL Recipes\sources\hr>sqlplus hzpplsql/hzpplsql@HZPEN181
SQL*Plus: Release 11.2.0.1.0 Production on 星期一 11月 28 22:43:32 2016
Copyright (c) 1982, 2010, Oracle. All rights reserved.
连接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> @hr_main.sql
SP2-0042: 未知命令 "em" - 其余行忽略。
****** Creating REGIONS table ....
表已创建。
索引已创建。
表已更改。
****** Creating COUNTRIES table ....
表已创建。
表已更改。
SP2-0734: 未知的命令开头 "department..." - 忽略了剩余的行。
****** Creating LOCATIONS table ....
表已创建。
。。。。。。。此处省略
成功安装所有HR相关表,到指定的用户(模式schema)中了,可以跟着书做练习了。
用户名/口令 root/123456
1.从root用户切换到oracle用户
[root@oradb ~]# su - oracle
2.用sysdba用户登陆sqlplus
[oracle@oradb ~]$ sqlplus / as sysdba
SQL*Plus: Release 11.2.0.3.0 Production on Tue Nov 1 18:28:10 2016
Copyright (c) 1982, 2011, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
3创建新的数据库用户hzpplsql口令hzpplsql
SQL> create user hzpplsql identified by hzpplsql
2 ;
User created.
4.此时尝试用刚创建的用户hzpplsql登陆:报错缺少权限。拒绝登陆。
补充:我们新建立一个用户之后,如果未进行任何权限的赋予,该用户甚至连登录的权限都没有。此时,我们需要赋予该用户create session的系统权限(或者connect角色),才能实现登录。
SQL> conn hzpplsql/hzpplsql@orcal
ERROR:
ORA-01045: user HZPPLSQL lacks CREATE SESSION privilege; logon denied
5.尝试授权,报错:没有连接。排查:查看当前用户为"空",即需要重新登陆
SQL> grant create session to hzpplsql;
SP2-0640: Not connected
SQL> show user;
USER is ""
6.重新连接sysdba登陆,再次授权,授权成功。
SQL> conn / as sysdba
Connected.
SQL> show user;
USER is "SYS"
SQL> grant create session to hzpplsql;
Grant succeeded.
//此时新用户hzpplsql就可以登陆了
SQL> conn hzpplsql/hzpplsql@orcal;
Connected.
//但是做任何事情的权限还是没有
SQL> create table t (id number);
create table t (id number)
*
ERROR at line 1:
ORA-01031: insufficient privileges
7.为用户hzpplsql授予DBA权限
切换到sysdba用户:
SQL> conn / as sysdba;
Connected.
SQL> grant resource,connect,dba to hzpplsql;
Grant succeeded.
补充:
对于普通用户:授予connect, resource权限。
对于DBA管理用户:授予connect,resource, dba权限。
DBA: 拥有全部特权,是系统最高权限,只有DBA才可以创建数据库结构。sysdba角色之外权限最大的角色
RESOURCE:拥有Resource权限的用户只可以创建实体,不可以创建数据库结构。
CONNECT:拥有Connect权限的用户只可以登录Oracle,不可以创建实体,不可以创建数据库结构。
8.查看用户hzpplsql目前拥有的权限
切换到hzpplsql用户
SQL> select * from user_sys_privs;
USERNAME PRIVILEGE ADM
------------------------------ ---------------------------------------- ---
HZPPLSQL UNLIMITED TABLESPACE NO
HZPPLSQL CREATE SESSION NO
SQL> select * from user_role_privs;
USERNAME GRANTED_ROLE ADM DEF OS_
------------------------------ ------------------------------ --- --- ---
HZPPLSQL CONNECT NO YES NO
HZPPLSQL DBA NO YES NO
HZPPLSQL RESOURCE NO YES NO
补充:查看当前登陆用户的权限(系统、对象、角色)
select * from user_sys_privs;
select * from user_role_privs;
select * from user_tab_privs;
二、数据库环境已经创建好,具有DBA权限的用户hzpplsql,开始进行《Oracle PL/SQL攻略》的学习与练习
D:\myplsqltest\oracle-pl-sql-recipes-master\Oracle PL SQL Recipes\sources\hr进入目录,然后打开命令行终端CMD。执行如下命令:
1.通过SQL*PLUS连接到数据库,用刚刚新建的用户hzpplsql
sqlplus hzpplsql/hzpplsql@HZPEN181
2.执行上面目录下的sql脚本
@hr_main.sql
执行结果如下:
D:\myplsqltest\oracle-pl-sql-recipes-master\Oracle PL SQL Recipes\sources\hr>sqlplus hzpplsql/hzpplsql@HZPEN181
SQL*Plus: Release 11.2.0.1.0 Production on 星期一 11月 28 22:43:32 2016
Copyright (c) 1982, 2010, Oracle. All rights reserved.
连接到:
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> @hr_main.sql
SP2-0042: 未知命令 "em" - 其余行忽略。
****** Creating REGIONS table ....
表已创建。
索引已创建。
表已更改。
****** Creating COUNTRIES table ....
表已创建。
表已更改。
SP2-0734: 未知的命令开头 "department..." - 忽略了剩余的行。
****** Creating LOCATIONS table ....
表已创建。
。。。。。。。此处省略
成功安装所有HR相关表,到指定的用户(模式schema)中了,可以跟着书做练习了。
0 0
- Linux系统下连接Oracle数据库,创建新的数据库用户及分配权限
- Linux系统下连接Oracle数据库,创建新的数据库用户及分配权限
- oracle数据库用户创建、权限分配
- Oracle数据库迁移前的准备工作(创建用户并且分配权限及表空间)
- oracle 数据库的创建用户,用户解锁,给用户赋连接,资源权限的命令
- 数据库的创建,用户,及权限分配---MYSQL技术之路(一)
- 数据库创建用户和分配权限问题
- 数据库创建用户及权限
- mysql数据库添加用户及分配权限
- SQL语句创建登录名,数据库用户,数据库角色及分配权限
- Oracle数据库下创建用户并授予权限
- oracle 创建数据库 在新创建的数据库中创建用户 删除创建数据库 链接orcl
- 关于.net中连接linux系统下的oracle数据库
- 关于.net中连接linux系统下的oracle数据库
- 关于.net中连接linux系统下的oracle数据库
- Oracle创建新数据库,新用户,以及连接此用户的方法心得
- linux下oracle创建数据库的创建
- oracle数据库01-连接&用户&权限
- web前端页面性能优化小结
- iOS 镂空文字效果
- Dojo1.11官方教程文档翻译(4.5)使用声明式语法
- iOS让键盘消失,取消第一响应,取消一级响应
- crontab语法高亮
- Linux系统下连接Oracle数据库,创建新的数据库用户及分配权限
- MongoDB学习笔记—Linux下搭建MongoDB环境
- 用Maven部署war包到远程Tomcat服务器
- Android动画-帧动画-属性动画
- [isayme]Xshell配色方案
- CWnd与HWND的区别与转换
- centos安装redis
- 文件描述符和文件指针
- jquery中$('form').submit()和$("form").submit()有什么区别?注意一个是双引号,一个是单引号