Oracle学习笔记

发布 2021-05-11 23:12:28 阅读 3288

的3个默认的用户。

sys change_on_install [as sysdba]

system manager

scott tiger

创建用户。精简版:create user user_name identified by user_pwd;

完全版:create user 用户名。

indentified by 密码。

default tablespace 默认表空间。

temporary tablespace 临时表空间。

quota 整数 k|m|limited on 默认表空间。

临时表空间用于支持排序,不允许使用限额。

删除用户:drop user user_name [cascade];

cascade表示删除user_name并删除它所创建的表。

权限设置:(上例创建的用户是没有权限的,需要进行权限设置)

系统权限。授予:

grant create session to user_name;

grant create table to user_name;

注意:只授予创建表的权利是不可以创建表的,必须再授予使用表空间的权利才可以创建表。

grant unlimited tablespace to user_name;

grant create session to public; public只全部用户。

撤销:revoke create session from user_name;

revoke create table from user_name;

revoke unlimited tablespace from user_name;

查看当前用户的系统权限:

select * from user_sys_privs;

对象权限。授予:

grant select on tab_name to user_name

grant insert on tab_name to user_name

grant all on tab_name to user_name; 全部权利。

撤销:revoke select on tab_name from user_name

revoke all on tab_name from user_name;

查看当前用户的所有的对象权限:

select * from user_tab_privs;

对象权限可以控制到列:

grant update (col_name) on tab_name to user_name;

grant insert (col_name) on tab_name to user_name

查询:select * from user_col_privs;

注意:查询和删除不能控制到列。

查询语句分为:

ddl(数据定义语言):创建,修改,删除表。

dnl(数据操纵语言):对表进行增删改查。

dcl(数据控制语言):权限控制。

注意:上面三类只有dnl中的插入更新删除需要数据提交commit;

权限的传递:

系统权限:grantwith admin option;

a---b---c 当a撤销了b的权限,c的权限仍在。

对象权限:grantwith grant option;

a---b---c 当a撤销了b的权限,c的权限也没了。

注意:此结论与你的oracle版本有关,我当前的版本为oracle 11g.

角色:打包权限。

create role role_name;

grantto role_name;

drop role role_name;

注意:1.有些系统权限级别很高,无法加入角色。

2. create table create any table

alter tablealter any table

drop table] drop any table

没有中的权限,因为你拥有创建表的权限了,默认情况下就可以进行修改和删除了。

3. 角色不属于某个用户,是公用的。

数据库的三种验证机制:

1.操作系统验证:计算机---计算机管理-->本地用户和组---ora_dba中的用户。

2.密码文件验证:

密码文件地址:

d:\oracle\product\11.1.0\db_1\database\

拥有sysoper和sysdba权限的用户使用1,2的验证方法。

3.数据库验证:一般用户登陆都使用数据库验证,所以如果想以普通用户身份登陆到数据库,必须先启动数据库,然后进行登陆。

linux下 oracle 的启动过程:(启动实例需要权限,不能直接启动)

1. lsnrctl start 启动监听。

2. sqlpuls sys/oracle as sysdba 传递给监听,监听判别用户类型,然后进行验证(如果是普通用户,就传给数据库进行验证即第3机制;如果是高级用户,采用1,2机制进行验证)

3. startup 启动数据库实例。

windows 下启动oracle的启动过程:

startstart oracleserviceagonisha

对于高级用户,默认首先采用操作系统验证。

查看计算机管理中本地用户和组中ora_dba中的用户即sysdba身份。

丢失管理员用户密码解决方法:

1.进入计算机管理,将该用户添加到ora_dba的组里。然后进入oracle更改密码。

2.删除密码文件。cmd中键入orapwd回显内容如下:

usage: orapwd file= password= entries= force= ignorecase= nosysdba=

为密码文件的绝对路径包含文件名称。为数字,表示此类用户的最大数量。

force表示如果有此类用户是否强制覆盖。

用户加锁解锁:

alter user user_name account lock;

alter user user_name account unlock;

用户口令立即失效:

alter user user_name password expire;

当使用这个命令后,该用户再次登陆时将被要求重新设置密码。

ORACLE学习笔记

rac real application clusters 真实应用集群。ohs oracle http server sga system global area 系统全局区,是系统为实例分配的一组共享缓冲存储区,用于存放数据库数据和控制信息,以实现对数据库数据的管理和操作。实例 存取和控制数据数...

Oracle学习笔记

参数文件 记录了控制文件的位置,控制文件是一个非常小的二进制文件,最大。可以增长到 64mb,控制文件包括如下主要信息 数据库的名字,检查点信息,数据库创建的时间戳 所有的数据文件,联机日志文件,归档日志文件信息 备份信息等 有了这些信息,oracle 就知道那些文件是数据文件,现在的重做日志文件是...

ORACLE学习笔记

目录。oracla管理 1 1.登录sqlplus 1 1.1.sysdba 身份登陆 1 1.2.普通用户登陆sqlplus 1 2.常用命令 1 3.格式化提示符 2 4.查看系统状态 2 4.1.查看实例状态 2 4.2.查看表 2 5.关闭 启动 2 6.创建表空间 3 7.用户和权限 3 ...