日期:2014-05-16  浏览次数:20428 次

oracle基本命令
Windows下启动服务:
OracleOraDb10g_home1TNSlistener:(启动命令:lsnrctl start)
OracleService[服务名]:(启动命令:oradim -starup -sid orcl)

Linux下启动服务:
lsnrctl start
sqlplus / as sysdba
startup

登录:
sqlplus / as sysdba(SYS用户登录)
sqlplus yaya/123456(一般用户登录)
show user;(显示当前的用户名)

创建用户(llisi):
create user lisi identified by lisi;(用户名和密码都是:lisi)

系统权限:
grant create session to lisi;(没有此权限,该用户不能登录)
grant create table to lisi;(没有此权限,该用户不能创建表)
grant unlimited tablespace to lisi;(没有此权限,该用户不能创建表,因为没有表空间)
revoke create session from lisi;(撤销上面的权限)
revoke create table from lisi;
revoke unlimited tablespace to lisi;

grant create session to public;(给所有的用户赋予创建表的权限)
select * from user_sys_privs;(查看当前用户所拥有的系统权限)

对象权限:
grant select on mytab to lisi;(把当前用户中的mytab表的查询权限,赋予给lisi)
grant all on mytab to lisi;(把当前用户中的mytab表的所有权限,赋予给lisi)
grant all on mytab to public;(把当前用户中的mytab表的所有权限,赋予给所有用户,public是“所有”的意思)

revoke select on mytab from lisi;(撤销上面的权限)
revoke all on mytab from lisi;

select * from user_tab_privs;(查看当前用户所拥有的对角权限)

对象权限可以控制到列(只能有插入和更新,查询和删除不能控制到列)
grant update(name) on mytab to lisi;(把当前用户中mytab表name字段的更新权限,赋予给lisi)
grant insert(id) on mytab to list;(把当前用户中mytab表id字段的插入权限,赋予给lisi)

commit;(只要对表进行插入,更新,删除,才会用到commit,其他情况都不用到commit语句)


权限传递:
grant create session to lisi with admin option;(授此权限给lisi,并且让lisi也可以授此权限给其他用户)

触角管理:
create role myrole;(创建名为:myrole的角色)
drop role myrole;(删除名为:myrole的角色)
grant myrole to lisi;(把角色myrole的所有权限,授予给lisi)

修改一般用户密码:
alter user scott identified by tiger;(修改用户scott的密码为:tiger)

修改管理员密码:
orapwd file=C:\oracle\product\10.1.0\Db_1\database\PWDsunlight.ora password=123456 entries=10 force=y

查看所有的管理员:
select * from v$pwfile_users;