oracle db studay
先查询空闲空间
select tablespace_name,file_id,block_id,bytes,blocks from dba_free_space;
www.zzzyk.com
增加Oracle表空间
询数据文件名称、大小和路径的信息
select tablespace_name,file_id,bytes,file_name from dba_data_files;
修改文件大小语句如下
alter database datafile
'需要增加的数据文件路径,即上面查询出来的路径
'resize 800M;
创建Oracle表空间
create tablespace test
datafile '/home/app/oracle/oradata/oracle8i/test01.dbf' size 8M
autoextend on
next 5M
maxsize 10M; www.zzzyk.com
create tablespace sales
datafile '/home/app/oracle/oradata/oracle8i/sales01.dbf' size 800M
autoextend on
next 50M
maxsize unlimited
maxsize unlimited 是大小不受限制
create tablespace sales
datafile '/home/app/oracle/oradata/oracle8i/sales01.dbf' size 800M
autoextend on
next 50M
maxsize 1000M
extent management local uniform;
unform 表示区的大小相同,默认为1M
create tablespace sales
datafile '/home/app/oracle/oradata/oracle8i/sales01.dbf' size 800M
autoextend on
next 50M
maxsize 1000M
extent management local uniform size 500K;
unform size 500K 表示区的大小相同,为500K
create tablespace sales
datafile '/home/app/oracle/oradata/oracle8i/sales01.dbf' size 800M
autoextend on
next 50M
maxsize 1000M
extent management local autoallocate;
autoallocate 表示区的大小由随表的大小自动动态改变,大表使用大区小表使用小区
create tablespace sales
datafile '/home/app/oracle/oradata/oracle8i/sales01.dbf' size 800M
autoextend on
next 50M
maxsize 1000M
temporary;
temporary 创建字典管理临时表空间
create temporary tablespace sales
tempfile '/home/app/oracle/oradata/oracle8i/sales01.dbf' size 800M
autoextend on
next 50M
maxsize 1000M
为表空间增加数据文件:
alter tablespace sales add
datafile '/home/app/oracle/oradata/oracle8i/sales02.dbf' size 800M
autoextend on next 50M
maxsize 1000M;
更改自动扩展属性:
alter database datafile
'/home/app/oracle/oradata/oracle8i/sales01.dbf',
'/home/app/oracle/oradata/oracle8i/sales02.dbf'
'/home/app/oracle/oradata/oracle8i/sales01.dbf
autoextend off;
3种标准角色
CONNECT Role(连接角色)
临时用户,特别是那些不需要建表的用户,通常只赋予他们CONNECTrole。CONNECT是使用Oracle的简单权限,
这种权限只有在对其他用户的表有访问权时,包括select、insert、update和delete等,才会变得有意义。
拥有 CONNECT role的用户还能够创建表、视图、序列(sequence)、簇(cluster)、同义词(synonym )、
会话(session)和与其他数据库的链(link)
RESOURCE Role(资源角色)
更可靠和正式的数据库用户可以授予RESOURCE role。
RESOURCE提供给用户另外的权限以创建他们自己的表、序列、过程(procedure)、触发器(trigger)、索引(index)和簇(cluster).
DBA Role(数据库管理员角色)
DBA role拥有所有的系统权限
包括无限制的空间限额和给其他用户授予各种权限的能力。
SYSTEM由DBA用户拥有。下面介绍一些DBA经常使用的典型权限。
(1)grant(授权)命令
grant connect, resource to user_name;
(2)revoke(撤消)权限
revoke connect, resource from user_name;
创建角色
除了前面讲到的三种系统角色----CONNECT、RESOURCE和DBA,用户还可以在Oracle创建自己的role。
用户创建的role可以由表或系统权限或两者的组合构成。为了创建role,
用户必须具有CREATE ROLE系统权限。
create role role_name;
grant select on object_name to role_name;
删除角色
drop role role_name;
一个具有DBA角色的用户可以撤消任何别的用户甚至别的DBA的CONNECT、RESOURCE 和DBA的其他权限。
当然,这样是很危险的,因此,除非真正需要,DBA权限不应随便授予那些不是很重要的一般用户。
撤消一个用户的所有权限,并不意味着从Oracle中删除了这个用户,
也不会破坏用户创建的任何表;只是简单禁止其对这些表的访问。
其他要访问这些表的用户可以象以前那样地访问这些表。
创建用户
create user user_name identified by user_password;
create user tickets identified by "123456"
default tablespace tablespace_name
temporary tablespace temp_tablespace_name;
修改用户
alter user user_name identified by user_new_password;
删除用户
drop user user_name;
如果用户拥有对象,则不能直接删除,否则将返回一个错误值。指定关键字cascade,可删除用户所有的对象,然后再删除用户
drop user user_name cascade;
Oracle用户解锁
alter user scott account unlock;
解锁之后可能会要求你该密码:
alter user scott identified by tiger;
锁定用户的方法:
alter user test account lock;
sqlplus>host command
强制写入数据文件
alter system checkpoint;
清楚缓存数据字典信息
alter system flush shared_pool;
Oracle查询用户表空间
select * from user_all_tables
Oracle查询所有函数和储存过程
select * from user_source
Oracle查询所有用户
select * from all_users.select * from dba_users
Oracle查看当前用户连接
select * from v$Session
Oracle查看当前用户权限
select * from session_privs
查询更改Oracle用户名
select user#,name,password from user$ where name ='user_name';
select a.file_id "FileNo",a.tablespace_name
"Tablespace_name",
a.bytes "Bytes",a.bytes-sum(nvl(b.bytes,0)) "Used",
sum(nvl(b.bytes,0)) "Free",
sum(nvl(b.bytes,0))/a.bytes*100 "%free"
from dba_data_files a, dba_free_space b
where a.file_id=b.file_id(+)
group by a.tablespace_name ,
a.file_id,a.bytes order by a.tablespace_name;
列出实例中所有控制文件的名字及状态信息
V$CONTROLFILE
列出所有参数的位置及