- Oracle用户和常用命令
- Oracle安装会自动生成sys用户和system用户
sys:用户是超级用户,具有最高权限,具有sysdba角色,有create database的权限。
system:用户是管理操作员,权限也很大,具有sysoper角色,没有create database| drop database的权限一般讲,对数据库维护,使用system用户登录就可以。
注:sysoper就是为了防止sysdba的权限过大设置的一个角色,主要是启停数据库、备份还原数据库,不能drop和create数据库,这是最主要的区别,其它在新版本里区别越来越小。
-
- scott普通用户
如果安装时未解锁,需要解锁才能使用。
-
- sqlplus登录
cmd下使用Oracle自带的sqlplus登录:
sqlplus
*提示输入用户名与密码
本机登录:
sqlplus scott/tiger@orcl
远程登录:
sqlplus scott/tiger@192.168.56.102:1521/orcl
本机管理员登录:
sqlplus sys/orcl as sysdba
远程登录:
sqlplus scott/tiger@192.168.56.102:1521/orcl as sysdba
使用exit、disconnect、quit退出:
exit:隐性提交数据,断开sqlplus与Oracle的连接,再退出sqlplus。
disc:断开sqlplus与Oracle的连接,但不退出sqlplus。(disc——disconnect的简写)
quit:不提交数据,断开sqlplus与Oracle的连接,退出要sqlplus。
换用户登录可以使用connect:
connect system --切换到system账户
显示当前账户:
show user
-
- 创建/删除表空间
表空间(TableSpace)是Oracle数据库中一个逻辑概念,它在物理上并不存在。
Oracle中的表空间等价于SQL Server中的数据库。
注1:使用管理员账号来创建表空间,普通账户无法创建。
注2:基于应用性能和管理方面的考虑,最好为不同的账户创建独立的表空间。
注3:不要物理删除硬盘上的dbf文件,否则会引起Oracle启动时找不到文件报错,需重装。
创建表空间:
create tablespace OrclTBS01
Datafile ‘d:\database\student.dbf’ --注:d:\database目录必须已存在
size 50M
autoextend on next 10m maxsize unlimited; --每次扩展10m,无限扩展
修改表空间名:
alter tabelspace OrclTBS01 rename to OrclTBS02;
删除表空间:
drop tablespace OrclTBS02;
注4:删除表空间,不会删除表空间包含的内容和数据库文件。
除非在drop中使用:
including contents 同时删除表空间内容;
including contents and datafile 同时删除表空间内容和数据文件。
-
- 创建用户
基本语法:
create user 用户名 identified by 密码 [default tablespace 表空间名] |
注1:创建用户必须具有dba权限
create user xiaoming identified by xiaoming default tablespace OrclTBS02; |
-
- alert user修改密码
注:改密码必须是系统管理员权限
远程管理员登录命令:
connect sys/sys@192.168.56.102:1521/orcl as sysdba
本机管理员登录命令
connect sys/sys@orcl as sysdba --管理员账户登录
alert user xiaoming identified by xiaohua; --再进行修改操作
-
- drop删除用户
drop user 用户名 [cascade] |
注:必须具有drop_user权限,自己不能删除自己
如果已经创建了表,那么就需要在删除时带一个级联的参数cascade
7、赋权限
Oralce有两种权限
一种是系统权限,一种是对象权限。
系统权限允许执行某些数据库操作
主要为connect(连接),resource(创建表权限),dba权限
对象权限是指用户对某一对象(表、视图、序列等)进行操作
要给用户授权必须满足下列条件之一:
用户拥有指定的对象
用户已经拥有了使用GRANT OPTION的对象权限
给xiaoming分配系统权限
给连接的权限
grant connect to xiaoming
给创建的权限
grant resource to xiaming
允许用户查看scott的emp表中的记录
grant select on scott.emp to xiaoming
允许用户更新scottemp表中的记录
grant update on scott.emp to xiaoming
all表示emp表的所有权限
grant all on scott.emp to xiaoming
收回权限使用命令revoke
scott收回emp表的查询权限
revoke select on users from xiaoming
8、锁定用户lock
alter user xiaoming account lock
9、解锁用户unlock
alter user xiaoming account unlock
10、spool
可以将sql*plus屏幕上的内容输出到指定的文件中去,上课开始就需要打这个,结束关闭输出,保存到文件
spool d:\test.sql;
并输入spool off;
11、清屏
host cls
12、显示当前用户
show user
13、当前用户下的表
select * from tab
14、查看表结构
desc emp
15、设置显示的行宽
--先显示行宽
show linesize
--设置行宽
set linesize 150
16、设置列宽,表示ename这个字段 a代表字符串,固定写法,表示8个字符长度
column ename format a8
--可以简写,9代表一位数字
col sal for 9999
17、 /表示执行上条SQL语句
18、注释
--单行注释
/* */多行注释