Posted by weilm on 2012-06-04 03:09 下午
|
1、查询表空间信息
select * from dba_tablespaces;
2、删除表空间文件
alter database datafile 'XXX' offline drop;
3、删除表空间、表空间内的内容以及关联的所有datafile文件
drop tablespace XXX including contents and datafiles;
3、删除用户
drop user XXX cascade;
4、启动数据库
startup
5、关闭数据库
shutdown immediate
6、缓冲等待统计
select * from V$WAITSTAT
7、数据库配置参数查询语句
SELECT NAME,VALUE FROM v$parameter ORDER BY NAME;
8、修改数据文件大小
alter database datafile '/opt/oracle/cjp/cjp.dbf' resize 500M;
9、设定数据文件自动扩展
ALTER DATABASE DATAFILE '/opt/oracle/cjp/cjp.dbf' AUTOEXTEND ON NEXT 100M MAXSIZE 10000M;
10、查看表空间信息
SELECT A.TABLESPACE_NAME,A.BYTES TOTAL,B.BYTES USED, C.BYTES FREE,
(B.BYTES*100)/A.BYTES "% USED",(C.BYTES*100)/A.BYTES "% FREE"
FROM SYS.SM$TS_AVAIL A,SYS.SM$TS_USED B,SYS.SM$TS_FREE C
WHERE A.TABLESPACE_NAME=B.TABLESPACE_NAME AND A.TABLESPACE_NAME=C.TABLESPACE_NAME;
11、查看表空间及所属文件
select tablespace_name, file_id, file_name, round(bytes/(1024*1024),0) total_space
from dba_data_files order by tablespace_name;
12、修改UNDO表空间大小
create undo tablespace undotbs2 datafile '/opt/oracle/oradata/ora103/undotbs02.dbf' size 500m;
alter system set undo_tablespace=undotbs2;
drop tablespace undotbs1 including contents and datafiles;
create undo tablespace undotbs1 datafile '/opt/oracle/oradata/ora103/undotbs01.dbf' size 2000m;
alter system set undo_tablespace=undotbs1;
drop tablespace undotbs2 including contents and datafiles;
alter database datafile '/opt/oracle/oradata/ora103/undotbs01.dbf' autoextend off;
13、查看锁表信息
SELECT /*+ rule */ s.username,decode(l.type,'TM','TABLE LOCK','TX','ROW LOCK',NULL) LOCK_LEVEL,
o.owner,o.object_name,o.object_type,s.sid,s.serial#,s.terminal,s.machine,s.program,s.osuser
FROM v$session s,v$lock l,dba_objects o
WHERE l.sid = s.sid AND l.id1 = o.object_id(+) AND s.username is NOT Null;
14、杀锁
alter system kill session 'sid,serial#';
15、查看系统参数
show parameter db_recovery_file_dest_size
16、查看用户和默认表空间的关系。
select username,default_tablespace from dba_users;
17、删除用户
drop user xxx cascade;
18、创建用户(创建user1,密码为password,使用的表空间为users)
create user user1 identified by password default tablespace users temporary temp;
19、赋权限
grant dba to user1;
20、启动监听
lsnrctl start
21、查看数据库表空间
select * from V$tablespace;
22、查询分区信息
select table_name,partition_name from user_tab_partitions;
23、如何定位重要(消耗资源多)的SQL
select sql_text from v$sql where disk_reads > 1000 or (executions > 0 and buffer_gets/executions > 30000);
24、修改用户密码
alter user 用户名 identified by 新密码;
25、创建表空间
CREATE TABLESPACE pisaen DATAFILE '/opt/oracle/pisaen/pisaen.dbf' SIZE 200M reuse autoextend on maxsize 500M;
26、删除表数据
Truncate TABLE XXX;
27、创建用户
CREATE USER username IDENTIFIED BY password
(OR IDENTIFIED EXETERNALLY)
(OR IDENTIFIED GLOBALLY AS 'CN=user')
[DEFAULT TABLESPACE tablespace]
[TEMPORARY TABLESPACE temptablespace]
[QUOTA [integer K[M] ] [UNLIMITED] ] ON tablespace
[,QUOTA [integer K[M] ] [UNLIMITED] ] ON tablespace
[PROFILES profile_name]
[PASSWORD EXPIRE]
[ACCOUNT LOCK or ACCOUNT UNLOCK]
其中,
·CREATE USER username:用户名,一般为字母数字型和“#”及“_”符号。
·IDENTIFIED BY password:用户口令,一般为字母数字型和“#”及“_”符号。
·IDENTIFIED EXETERNALLY:表示用户名在操作系统下验证,该用户名必须与操作系统中所定义的用户名相同。
·IDENTIFIED GLOBALLY AS ‘CN=user’:用户名由Oracle安全域中心服务器验证,CN名字表示用户的外部名。
·[DEFAULT TABLESPACE tablespace]:默认的表空间。
·[TEMPORARY TABLESPACE tablespace]:默认的临时表空间。
·[QUOTA [integer K[M] ] [UNLIMITED] ] ON tablespace:用户可以使用的表空间的字节数。
·[PROFILES profile_name]:资源文件的名称。
·[PASSWORD EXPIRE]:立即将口令设成过期状态,用户再登录前必须修改口令。
·[ACCOUNT LOCK or ACCOUNT UNLOCK]:用户是否被加锁,默认情况下是不加锁的。
28、数据文件在没有被offline的情况下实物理删除了,导致oracle的数据不一致,因此启动失败.解决方法:
lsnrctl stop
sqlplus internal
SQL> shutdown abort
SQL> startup mount
SQL> alter database datafile '/webdata/dbdata/ry/csh20051001.dat' offline drop;
SQL> alter database open;
SQL> drop tablespace r_csh_20051001;
lsnrctl start
小结racle数据文件(datafile)被误删除后没有恢复的办法,只能把该数据文件offline后drop掉
29、在Oracle中查看所有表
select table_name from user_tables; //当前用户的表
select table_name from all_tables; //所有用户的表
select table_name from dba_tables; //包括系统表
select table_name from dba_tables where owner='用户名'
30、oracle查看所有函数或存储过程的代码
select * From user_source;
|
|