Oracle基础

来源:互联网 发布:服务器坏了数据怎么办 编辑:程序博客网 时间:2024/05/18 09:14
1.三个默认系统用户
sys change_on_install[as sysdba]
system manager
scott tiger

2.用户登录
sys用户登录:sqlplus / as sysdba;
其他用户登录:sqlplus 用户名/密码;

3.新增用户
create user 用户名 identified by 密码;(默认建在SYSTEM表空间下) 

4.系统权限
新增:
grant create session to 用户名;
grant create table to 用户名;
grant unlimited tablespace to 用户名;

移除:
revoke create session from 用户名;
revoke create table from 用户名;
revoke unlimited tablespace from 用户名;

将session权限赋给所有用户,其他权限类似:
grant create session to public;

查询登录用户所包含的系统权限:
select * from user_sys_privs;

5.对象权限
新增:
grant select on 表名 to 用户名;
grant all on 表名 to 用户名;

移除:
revoke select on 表名 to 用户名;
revoke all on 表名 to 用户名;

查询登录用户所包含的表权限:
select * from user_tab_privs;

对象权限可以控制到列:
grant update(表的列名) on 表名 to 用户名;
grant insert(表的列名) on 表名 to 用户名;

查询登录用户所包含的表的列权限:
select * from user_col_privs;
注意:查询和删除不能控制到列。
// ddl  dml dcl

6.权限传递
grant create session to 用户名 with admin option;
grant select on 表名 to 用户名 with grant option;

7.角色(角色是权限的集合):
创建角色:create role 角色名;
将权限赋给角色:grant create session to 角色;
角色权限赋给用户:grant 角色 to 用户;
删除角色:dorp role 角色名;
注意:
特殊权限或高级权限不可以赋给角色,如:unlimited tablespace。
create table create any table
[alter table] alter any table
[drop table] drop any table
表属于某个用户,角色不属于。

8.数据库的三种验证机制
操作系统验证
密码文件验证
数据库验证

9.linux下oracle的主要服务启动过程
1)启动监听:lsnrctl start
2)启动实例:
10i或后的版本:sqlplus sys/oracle(密码) as sysdba
10i前的版本:sqlplus /nolog
    conn sys/oracle(密码) as sysdba
3) 执行启动实例:startup

10.windows下oracle的主要服务启动过程
1)启动监听:lsnrctl start
2)启动实例:oradim -starup -sid orcl
3) 执行启动实例:startup

11.用户密码修改
1】普通用户:可用sys用户修改。
2】sys用户:
1)orapwd
2)orapwd
file=C:\Oracle\product\11.2.0\dbhome_2\database\SPFILEORCL.ORA(路径) 
password=sys的密码密码
entries=设置多少个特权用户(填入数字)
force=舒服强制覆盖原来的<y/n>
ignorecase=<y/n>
nosysdba=<y/n>

12.查看特权用户:select * from v$pwfile_users;

13.显示当前连接用户:show user;

14.查看系统拥有哪些用户:select * from all_users; 

15.连接到新用户:conn 用户名/密码 

16.查询当前用户下所有对象:select * from tab; 

17.建立一个表:create table a(a number); 

18.查询表结构:desc a;

19.插入新记录:insert into a values(1); 

20.查询记录:select * from a; 

21.更改记录:update a set a=2; 

22.删除记录:delete from a; 

23.回滚 :
roll; 
rollback; 

24.提交:commit;