ORACLE DBA培訓命令彙總

gjm008發表於2008-12-25

1 執行SQLPLUS工具
sqlplus

2 以OS的預設身份連線
/ as sysdba

3 顯示當前使用者名稱
show user

4 直接進入SQLPLUS命令提示符
sqlplus /nolog

5 在命令提示符以OS身份連線
connect / as sysdba

6 以SYSTEM的身份連線
connect system/xxxxxxx@服務名

7 顯示當然使用者有哪些表
select * from tab;

8 顯示有使用者名稱和帳戶的狀態
select username,account_status from dba_users;

9 將SCOTT帳號解鎖(加鎖)
alter user scott account unlock(lock);

10 以SCOTT的身份連線並且檢視所屬表
connect scott/tiger
select * from tab;


11 檢視EMP的表結構及記錄內容
desc emp
select empno,ename from emp;

12 以OS的身份登看SGA,共享池,CACHE的資訊
connect / as sysdba
show sga
select name,value/1024/1024 from v$sga;
show parameter shared_pool_size
select value/1024/1024 from v$parameter where name ='shared_pool_size';
show parameter db_cache_size
select value/1024/1024 from v$parameter where name ='db_cache_size';

13 檢視所有含有SIZE的資訊
show parameter size
bitmap_merge_area_size integer 1048576
create_bitmap_area_size integer 8388608
db_16k_cache_size big integer 0
db_2k_cache_size big integer 0
db_32k_cache_size big integer 0
db_4k_cache_size big integer 0
db_8k_cache_size big integer 0
db_block_size integer 4096
db_cache_size big integer 33554432
db_keep_cache_size big integer 0
db_recycle_cache_size big integer 0

NAME TYPE VALUE
------------------------------------ ----------- -------------
global_context_pool_size string
hash_area_size integer 1048576
java_max_sessionspace_size integer 0
java_pool_size big integer 33554432
large_pool_size big integer 8388608
max_dump_file_size string UNLIMITED
object_cache_max_size_percent integer 10
object_cache_optimal_size integer 102400
olap_page_pool_size integer 33554432
oracle_trace_collection_size integer 5242880
parallel_execution_message_size integer 2148

NAME TYPE VALUE
------------------------------------ ----------- -------------
sga_max_size big integer 143727516
shared_pool_reserved_size big integer 2516582
shared_pool_size big integer 50331648
sort_area_retained_size integer 0
sort_area_size integer 524288
workarea_size_policy string AUTO


14 顯示SGA的資訊
select * from v$sgastat;
POOL NAME BYTES
----------- -------------------------- ----------
fixed_sga 453532
buffer_cache 33554432
log_buffer 656384
shared pool subheap 46884
shared pool KGK heap 3756
shared pool KQR M PO 586792
shared pool KQR S PO 180232
shared pool KQR S SO 5128
shared pool sessions 410720
shared pool sql area 2144664
shared pool 1M buffer 2098176

POOL NAME BYTES
----------- -------------------------- ----------
shared pool KGLS heap 901756
shared pool parameters 8352
shared pool free memory 38687204
shared pool PL/SQL DIANA 420816
shared pool FileOpenBlock 695504
shared pool PL/SQL MPCODE 135692
shared pool library cache 2985576
shared pool miscellaneous 4889396
shared pool MTTR advisory 21164
shared pool PLS non-lib hp 2068
shared pool XDB Schema Cac 4966300

POOL NAME BYTES
----------- -------------------------- ----------
shared pool joxs heap init 4220
shared pool kgl simulator 563260
shared pool sim memory hea 44184
shared pool table definiti 1728
shared pool trigger defini 1896
shared pool trigger inform. 1140
shared pool trigger source 448
shared pool type object de 69120
shared pool Checkpoint queue 282304
shared pool VIRTUAL CIRCUITS 265160
shared pool dictionary cache 1610880

POOL NAME BYTES
----------- -------------------------- ----------
shared pool KSXR receive buffers 1033000
shared pool character set object 323724
shared pool FileIdentificatonBlock 323292
shared pool message pool freequeue 834752
shared pool KSXR pending messages que 841036
shared pool event statistics per sess 1718360
shared pool fixed allocation callback 180
large pool free memory 8388608
java pool free memory 33554432

已選擇42行。

15 顯示PGA的資訊
select * from v$pgastat;
NAME VALUE UNIT
---------------------------------------------------------------- ---------- ---------
aggregate PGA target parameter 16777216 bytes
aggregate PGA auto target 7640064 bytes
global memory bound 838656 bytes
total PGA inuse 8293376 bytes
total PGA allocated 13106176 bytes
maximum PGA allocated 22090752 bytes
total freeable PGA memory 0 bytes
PGA memory freed back to OS 0 bytes
total PGA used for auto workareas 0 bytes
maximum PGA used for auto workareas 4096 bytes
total PGA used for manual workareas 0 bytes

NAME VALUE UNIT
---------------------------------------------------------------- ---------- ---------
maximum PGA used for manual workareas 4096 bytes
over allocation count 0
bytes processed 8783872 bytes
extra bytes read/written 0 bytes
cache hit percentage 100 percent

已選擇16行。

17 在$ORACLE_HOME/sqlplus/admin/glogin.sql中加入環境變數,以後每次啟動生效
define _editor=vi
set line 2000


18 將當前命令隨加到檔案中
save c:a.sql append

19 將指定檔案的命讀出緩衝區
get c:a.sql

20 執行指令碼語句
@ c:a.sql

21 將輸入儲存到指定檔案中
spool c:O.LOG
select * from v$sga;
spool off

22 設定行大小
set linesize 2000

23 設定頁大小
set pagesize 10

24 設定字元列格式
col ename format a30

25 設定數字列格式
col sal format 999,999.999

26 10G檢視檔案$ORACLE_HOME/install/protlist顯示埠
http://127.0.0.1:5560/isqlplus
9i檢視檔案$ORACLE_HOME/Apache/Apache/ports.ini顯示埠
http://127.0.0.1:7778/isqlplus
http://127.0.0.1:7778/isqlplusdba

27 啟動Oracle 9i監聽程式
Oracle的監聽程式主要是為客戶端的連線提供介面
$ lsnrctl start

28 關閉Oracle 9i監聽程式
$ lsnrctl stop

29 啟動Oracle Web Server
$ cd $ORACLE_HOME/Apache/Apache/bin
$ ./startJServ.sh
/database/oracle/product/9i/Apache/Apache/bin/apachectl start: httpd started

30 關閉Oracle Web Server
$ cd $ORACLE_HOME/Apache/Apache/bin
$ ./stopJServ.sh
/database/oracle/product/9i/Apache/Apache/bin/apachectl stop: httpd stopped

31 啟動Oracle Web Server後預設的埠號是7777
unix
cd $ORACLE_HOME/Apache/Apache/bin/
htpasswd $ORACLE_HOME/sqlplus/admin/iplusdba.pw admin
windows
cd D:oracleora92ApacheApachebin
htpasswd D:oracleora92/sqlplus/admin/iplusdba.pw admin
New password: *****
Re-type new password: *****
Adding password for user admin

32 pfile: $ORACLE_BASE/admin/例項名/Pfile
spfile: $ORACLE_HOME/dbs
監聽器配置檔案:listener.ora: $ORACLE_HOME/network/admin/
tnsnames.ora: $ORACLE_HOME/network/admin/

33 指定使用者的表空間
SELECT DEFAULT_TABLESPACE FROM DBA_USERS WHERE USERNAME='使用者名稱'


34 當前使用者
select user from dual;show user

35 當前使用者的預設表空間
SELECT DEFAULT_TABLESPACE FROM DBA_USERS WHERE USERNAME=(select user from dual);

37 顯示正在使用的初始化引數檔案
show parameter spfile

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
spfile string %ORACLE_HOME%DATABASESPFILE%
ORACLE_SID%.ORA
38 用SPfile轉Pfile
create pfile='c:init.ora' from spfile;
create pfile from spfile;
UNIX將生成在$ORACLE_HOME/dbs目錄下
WINDOWS將生成在$ORACLE_HOME/DATABASE目錄下

39 顯示cache的值
show parameter cache
前面兩個下劃線的是動態調整的引數
前面一個下劃線的是內部引數

40 顯示正在使用的引數和文字引數值
select * from v$parameter;
select * from v$spparameter;

41 顯示動態效能檢視的結構
desc v$parameter;
名稱
NUM
NAME
TYPE
VALUE
ISDEFAULT
ISSES_MODIFIABLE
ISSYS_MODIFIABLE
ISMODIFIED
ISADJUSTED
DESCRIPTION
UPDATE_COMMENT

42 有條件的顯示動態引數
select * from v$parameter where name like '%db_cache%';

43 修改引數語句
alter system set sga_max_size=256m scope=spfile; &&寫入SPFILE,重啟生效
alter system set sga_max_size=256m scope=memory; &&寫入記憶體區,立即生效
alter system set sga_max_size=256m scope=both; &&即寫入記憶體區,又寫入SPFILE,預設為BOTH.

44 動態調整large_pool_size的語句
alter system set large_pool_size=16M;

45 當前正在使用的SGA的大小
select sum(bytes)/1024/1024 from v$sgastat;

46 設定db_cache_size的大小儲存在SPFILE
alter system set db_cache_size=128m scope=spfile;

47 設定shared_pool_size的大小儲存在SPFILE中
alter system set shared_pool_size=80m scope=spfile;

48 顯示PGA的狀態
select * from v$pgastat;
show parameter pga
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
pga_aggregate_target big integer 16777216

49 帶PFILE來啟動資料庫,?代表ORACLE的主目錄
startup pfile=?databaseinitmydb.ora

50 顯示當前資料庫的狀態,mount的狀態下就可以檢視資料庫的狀態
select open_mode from v$database;

51 顯示當前例項 nomount狀態下就可以檢視例項
select * from v$instance;

52 顯示 background_dump_dest的路徑 ,
show parameter background_dump_dest
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
background_dump_dest string D:oracleadminthwerpbdump

53 顯示當有使用者的表
select * from user_tables;

54 顯示當有使用者可以訪問表
select * from all_tables;

55 顯示使用者為SCOTT的表
select * from dba_tables where wner='SCOTT';

56 顯示所有使用者資訊
select * from dba_users;

57 建立使用者並指定密碼
create user edpthw identified by edpthw;

58 給使用者授權
grant connect,resource to edpthw;

59 建立一個表
create table a(a int);

60 顯示資料字典中表名為USER開頭的表名
select table_name from dict where table_name like 'USER%';

61 在UNIX下oerr ora 錯誤號檢視錯誤的幫助資訊.

62 在unix 檢視日誌中有哪些錯誤
grep ORA alert_PROD.log|tail -10

63 顯示當前例項
SELECT * FROM V$INSTANCE;

64 顯示當前資料庫資訊
SELECT * FROM V$DATABASE;

65 顯示當前ORACLR資料的版本
SELECT * FROM V$VERSION;

66 顯示當前的選項
SELECT * FROM V$OPTION;

67 顯示當前例項的初始化引數
SELECT * FROM V$PARAMETER;

68 顯示資料檔案
SELECT * FROM V$DATAFILE;

69 顯示日誌檔案
SELECT * FROM V$LOGFILE

70 顯示控制檔案
SELECT * FROM V$CONTROLFILE;

71 顯示當有有哪些會話
SELECT * FROM V$SESSION;

72 顯示當前有哪些程式
SELECT * FROM V$PROCESS;

73 顯示當前後臺程式
SELECT * FROM V$BGPROCESS;

74 顯示SGA的大小
SELECT * FROM V$SGA;

75 顯示SGA的統計數
SELECT * FROM V$SGASTAT;

76 顯示PGA的統計數
SELECT * FROM V$PGASTAT;

77 顯示有哪些控制檔案
SHOW PARAMETER CONTROL_FILES;

78 增加一個控制檔案一定要在NOMOUNT狀態下進行.語句如下.
alter system set control_files='D:ORADATAMYDBCONTROL01.CTL',
'D:ORADATAMYDBCONTROL02.CTL',
'D:ORADATAMYDBCONTROL03.CTL',
'E:CONTROL04.CTL' SCOPE=SPFILE;

alter system set control_files='D:oracleoradatathwerpCONTROL01.CTL',
'D:oracleoradatathwerpCONTROL02.CTL',
'D:oracleoradatathwerpCONTROL03.CTL',
'D:oracleoradatathwerpCONTROL04.CTL' scope=spfile;

79 資料重新啟動
STARTUP FORCE

80 顯示當前控制檔案
SELECT * FROM V$CONTROLFILE;
SHOW PARAMETER CONTROL

81 刪除一個控制檔案
alter system set control_files='D:ORADATAMYDBCONTROL01.CTL',
'D:ORADATAMYDBCONTROL02.CTL',
'D:ORADATAMYDBCONTROL03.CTL' SCOPE=SPFILE

82 顯示當前使用的日誌
SELECT * FROM V$LOG;

83 顯示例項的歸檔模式
ARCHIVE LOG LIST;

84 顯示重做日誌檔案
SELECT * FROM V$LOGFILE;

85 手工切換重做日誌檔案
ALTER SYSTEM SWITCH LOGFILE;

86 發出檢查點
ALTER SYSTEM CHECKPOINT;

87 顯示重做日期的歷史記錄
select * from v$log_history;

88 更改會語的日期格式
alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';

89 增加日誌組
ALTER DATABASE ADD LOGFILE GROUP 4 ( 'D:ORADATAMYDBredo4.log') SIZE 10240K;

92 刪除日誌組
ALTER DATABASE DROP LOGFILE GROUP 4 ;


90 增加日誌組成員
ALTER DATABASE ADD LOGFILE MEMBER 'D:ORADATAMYDBredo11.log' TO GROUP 1;

91 刪除日誌組成員
ALTER DATABASE DROP LOGFILE MEMBER 'D:ORADATAMYDBredo14.log' ;


92 顯示系統表空間
select * from dba_tablespaces;

93 顯示系統表空間所擁有的檔案
select * from dba_data_files;

94 顯示系統臨時表空間
select * from dba_temp_files;

95 顯示錶空間的已被使用多少
select tablespace_name,sum(bytes)/1024/1024 m
from dba_data_files group by tablespace_name;

96 顯示錶空間還有多少沒有使用
select tablespace_name,
sum(bytes)/1024/1024 m
from dba_free_space group by tablespace_name;

97 建立表空間
10G CREATE BIGFILE TABLESPACE "MYTBS1" DATAFILE 'D:ORADATAMYDBmytbs_01.dbf' SIZE 100M LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO ;
9I CREATE TABLESPACE "MYTBS1" DATAFILE 'D:oracleORADATAthwerpmytbs_01.dbf' SIZE 100M LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO ;
CREATE SMALLFILE TABLESPACE "MYTBS1" DATAFILE 'D:ORADATAMYDBmytbs_01.dbf' SIZE 100M , 'D:ORADATAMYDBmytbs02.dbf' SIZE 100M LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO;

98 在指字表空間裡建表
create table t1 (a int) tablespace mytbs1;

99 在指字表空間裡建索引
create index t1_ind on t1(a) tablespace mytbs1;

100 在指定表空間裡增加資料檔案
ALTER TABLESPACE "MYTBS1" ADD DATAFILE 'D:ORADATAMYDBmytbs03.dbf' SIZE 100M

100 修改表空間的大小
ALTER DATABASE DATAFILE 'D:ORADATAMYDBMYTBS_01.DBF' RESIZE 200M

101 表空間改檔案的自動擴充套件
ALTER DATABASE DATAFILE 'D:ORADATAMYDBMYTBS03.DBF' AUTOEXTEND ON NEXT 5M MAXSIZE UNLIMITED

102 刪除表空間和表空間所屬檔案
drop tablespace mytbs1 including contents and datafiles;

103 建立臨時表空間
CREATE SMALLFILE TEMPORARY TABLESPACE "MYTEMP" TEMPFILE 'D:oracleORADATAthwerpmytemp01.dbf' SIZE 200M AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL UNIFORM. SIZE 1M
CREATE TEMPORARY TABLESPACE "MYTEMP" TEMPFILE 'D:oracleORADATAthwerpmytemp01.dbf' SIZE 200M AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL UNIFORM. SIZE 1M

104 更改使用者的臨時表空間
ALTER USER "GARY" TEMPORARY TABLESPACE "MYTEMP"

105 設定成預設的表空間
ALTER DATABASE DEFAULT TEMPORARY TABLESPACE "MYTEMP"

106 建立臨時表空間組
ALTER TABLESPACE MYTEMP TABLESPACE GROUP MYTEMP_GROUP
ALTER TABLESPACE TEMP TABLESPACE GROUP MYTEMP_GROUP

107 建立重做表空間
CREATE UNDO TABLESPACE "MYUNDO" DATAFILE 'D:ORADATAMYDBmyundo01.dbf' SIZE 200M

108 顯示重做引數
show parameter undo

109 回滾段的使用情況
select * from dba_rollback_segs;

110 更改重做表空間
alter system set undo_tablespace=myundo;

111 建立一個表
create table a tablespace users as select * from dba_objects;

112 插入一些記錄
insert into a select * from a;

113 有條件查詢表名放在哪個表空間
select * from dba_tables where table_name='A' and wner='SYS';

114 有條件查詢段名放在哪個表空間
select * from dba_segments where segment_name='A' and wner='SYS';

115 查詢有哪些段型別
select distinct segment_type from dba_segments;

116 查詢段和表空間的對應關係
select * from dba_extents where segment_name='A' and wner='SYS';

117 建立一個16K表空間
CREATE TABLESPACE "MYTBS3" DATAFILE 'D:oracleORADATAthwerpmytbs3.dbf' SIZE 100M LOGGING EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO BLOCKSIZE 16384;

118 指字引數建立表
create table b (a int,b varchar2(10)) tablespace users INITRANS 2 PCTFREE 5;

119 顯示當前所使用的塊大小
show parameter block_size;

120 釋放表的高水位的空間
alter table a deallocate unused;

121 高水位前移.速度快
truncate table a;

122 分配空間給表
alter table a allocate extent (datafile 'D:ORADATAMYDBusers01.dbf' size 1m);

123 指定引數建立表
create table C (a int) tablespace system pctfree 10 pctused 60 storage(freelists 2);
CREATE TABLE "SYS"."D" ( "A" VARCHAR2(10)) TABLESPACE "SYSTEM" PCTFREE 5 PCTUSED 60 INITRANS 2 MAXTRANS 100 STORAGE ( FREELISTS 2)
124 生成一個測試
create table a tablespace users as select * from dba_objects;

125 檢視錶行的實體地址
select rowid form. a;

126 用包的命令檢視錶行的實體地址
select DBMS_ROWID.ROWID_RELATIVE_FNO(ROWID),DBMS_ROWID.ROWID_BLOCK_NUMBER(ROWID),DBMS_ROWID.ROWID_ROW_NUMBER(ROWID) FROM A

127 建立表索引
CREATE INDEX A_IND ON A(OBJECT_NAME) TABLESPACE MYTBS2;

128 檢視錶的索引
SELECt * FROM DBA_INDEXES WHERE TABLE_NAME='A';
SELECT * FROM DBA_SEGMENTS WHERE SEGMENT_NAME='A_IND';

129 移動重組表空間
ALTER TABLE A MOVE TABLESPACE USERS;

130 重建表索引
ALTER INDEX A_IND REBUILD;

131 設定行可以內部移動屬性
ALTER TABLE A ENABLE ROW MOVEMENT;

132 在原地進行行的移動
ALTER TABLE A SHRINK SPACE;

133 檢視錶所儲存的資訊
SELECT BYTES FORM. DBA_SEGMENTS WHERE SEGMENT_NAME='A';
SELECT OWNER,SEGMENT_NAME,BYTES FROM DBA_SEGMENTS WHERE SEGMENT_NAME='A';

134 擷取表
TRUNCATE TABLE A;

135 刪除表
DROP TABLE A CASCADE CONSTRAINTS;

136 顯示垃圾桶(10G才有)
show recyclebin
SELECT * FROM DBA_RECYCLEBIN;
SELECT * FROM USER_RECYCLEBIN;

137 恢復已刪除的表
flashback table a to before drop;

138 恢復較早已前的已刪除的表
flashback table "BIN$hWrBq1irS0COp10n22NZJg==$0" to before drop rename to a1;

139 查詢指定表的索引
select * from dba_indexs where table_name='A';

140 清除垃圾桶
PURGE RECYCLEBIN;
PURGE DBA_RECYCLEBIN;

141 刪除表並清除垃圾桶(10G)
DROP TABLE A PURGE;

142 刪除表的列
ALTER TABLE A DROP COLUMN COMMENTS CASCAGE CONSTRAINTES CHECKPOINT 1000;


143 重新命名列
ALTER TABLE A RENAME COLUMN HIRE_DATE TO START_DATE;

144 標記不可使用的列
ALTER TABLE A SET UNUSED COLUMN COMMENTS CASCADE CONSTRAINTS;

145 刪除不再使用的的列
ALTER TABLE A DROP UNUSED COLUMNS CHECKPOINT 10000;

146 繼續列的刪除操作
ALTER TABLE A DROP COLUMNS CONTINUE CHECKPOINT 10000;

147 增加表的主索引
ALTER TABLE A ADD PRIMARY KEY (OBJECT_ID);

148 刪除表的主索引
ALTER TABLE A DROP PRIMARY KEY;

149 索引表的主索引並指定索引所使用的表空間
ALTER TABLE A ADD PRIMARY KEY (OBJECT_ID) USING INDEX TABLESPACE USERS;

150 建立一個普通索引
CREATE INDEX A_NAME_IND ON A(OWNER,OBJECT_NAME);

151 建立一個函式索引
SELECT /*+ INDEX(A A_NAME2_IND) */ * FROM A WHERE UPPER(OBJECT_NAME)='A';

152 建立一個點陣圖索引
CREATE BITMAP INDEX A_NAME_BT ON A(OWNER);

153 查詢資料庫的資訊
SELECT /*+ INDEX(A A_NAME_BT) */ * FROM A WHERE WNER='SYS' OR WNER='SYSTEM';
SELECT /*+ FULL(A) */ * FROM A WHERE WNER='SYS' OR WNER='SYSTEM';

154 生成一個指令碼來建立索引重整
SELECT 'ALTER INDEX '||INDEX_NAME||' COALESCE;' FROM DBA_INDEXES WHERE TABLE_NAME='A' AND WNER='SYS'
SELECT 'ALTER INDEX '||INDEX_NAME||' REBUILD ONLINE;' FROM DBA_INDEXES WHERE TABLE_NAME='A' AND WNER='SYS'

155 顯示所有使用者的資訊
SELECT * FROM DBA_USERS;

156 顯示當前資料庫的使用者
SELECT USERNAME,ACCOUNT_STATUS,DEFAULT_TABLESPACE,TEMPORARY_TABLESPACE FROM DBA_USERS;

160 建立一個新使用者
create user edpthw identified by "123456"
default tablespace users
temporary tablespace temp
quota unlimited on users
quota 10m on mytbs2;

161 查詢限額資訊
select * from dba_ts_quotas;
select * from user_ts_quotas;

162 使用者改密碼
alter user edpthw identified by edpthw;

163 鎖使用者
alter user edpthw account lock;

164 使密碼過期,迫使改下一次進入改密碼
alter user edpthw password expire;

165 取消限額
alter user edpthw quota unlimited on mytbs2;

166 刪除使用者
drop user hmtong cascade;

167 授權使用者
grant create session,create table,create view to edpthw;

168 分別授權
GRANT CREATE ANY TABLE TO "hmtong"
GRANT CREATE TABLE TO "hmtong"
GRANT DROP ANY TABLE TO "hmtong"
GRANT SELECT ANY TABLE TO "hmtong"

169 折消授權
REVOKE UNLIMITED TABLESPACE FROM "hmtong"

170 物件授權
GRANT SELECT ON "hmtong"."A" TO "edpthw"

171 折消物件授權
REVOKE SELECT ON "hmtong"."A" FROM "edpthw"

172 取消進入系統直接用預設密碼,而一定要自己輸入密碼才可以進入
unix $ORACLE_HOMENETWORKADMINSQLNET.ORA
windows D:oracleproduct10.1.0Db_1NETWORKADMINSQLNET.ORA
SQLNET.AUTHENTICATION_SERVICES= (NTS,NONE)
修改$ORACLE_HOME/network/admin/sqlnet.ora檔案
  將原有的:SQLNET.AUTHENTICATION_SERVICES= (NTS)
  改為:SQLNET.AUTHENTICATION_SERVICES= (NONE)
  或者直接註釋:#SQLNET.AUTHENTICATION_SERVICES= (NTS)

173 查詢Pwfile中存放的使用者資訊
select * from v$pwfile_users;

174 授權sysdba給指定使用者
grant sysdba to hmtong;

175 取消指定使用者的sysdba許可權
revoke sysdba from hmtong;

176 修改系統的授權的屬性
alter system set remote_login_passwordfile=exclusive; 能sysdba登入,能授權
alter system set remote_login_passwordfile=shared scope=spfile; 只能sysdba登入,不能授權
alter system set remote_login_passwordfile=NONE; 取消

177 重建口令檔案
orapwd file=PWDmydb.ora password=itpub

178 建立一個使用者
create user hmtong identified by abcdefg;

179 授權連線給指定使用者
GRANT "CONNECT" TO "hmtong";
GRANT UNLIMITED TABLESPACE,CONNECT,RESOURCE TO HMTONG;

180 建立表
create table t1(a int);
create table t2(a int);

181 檢視系統特權
select * from user_sys_privs;

182 檢視物件特權
select * from user_tab_privs;

183 檢視被授予的角色
select * from user_role_privs;

184 檢視角色的有什麼許可權
select * from role_sys_privs;

185 檢視角色的有哪些表
select * from role_tab_privs;

186 檢視當前會話的許可權
select * from session_privs;

187 監聽器的狀態
lsnrctl start
$ORACLE_HOME/network/admin/listener.ora

188 監聽器的啟動和關閉
lsnrctl start [名字]
lsnrctl stop [名字]

189 監聽器的狀態和服務資訊
lsnrctl stat
lsnrctl service

190 配置監聽器的工具
netca
netmgr

192 動態註冊監聽器
alter system register;

193 配置監聽器的兩個引數
show parameter local_listener
show parameter remote_listener

194 追加設定一個服務名,服務名可以多個對應一個例項
alter system set service_names=mydb,appdb

195 客戶連線配置檔案
$ORACLE_HOME/network/admin/tnsname.ora

196 檢查指定的監聽器是否存在
TNSPING MYDB


197 將SQLNET.ORA配置好就可以connectsystem/testdb1@192.168.100.80:1521/testdb1方式連線
SQLNET.AUTHENTICATION_SERVICES= (NTS,NONE)
NAMES.DIRECTORY_PATH= (TNSNAMES,EZCONNECT)

198 快速重啟資料庫
shutdown immediate

199 將資料庫開啟到mount的狀態
startup mount

200 顯示資料庫的歸檔還是非歸檔模式
archive log list
資料庫日誌模式 存檔模式
自動存檔 禁用
存檔終點 D:oracleora92RDBMS
最早的概要日誌序列 64
下一個存檔日誌序列 69
當前日誌序列 69

201 在資料庫mount的狀態下更改資料庫的歸檔模式
alter database archivelog; 歸檔
alter database noarchivelog; 非歸檔

202 開啟資料庫
alter database open;

203 檢視歸檔的路徑的
SQL> show parameter log_archive_dest_x

204 動態的配置歸檔路徑在兩個不同的目錄下同時歸檔
alter system set log_archive_dest_1='location=e:archive';
alter system set log_archive_dest_2='location=d:archive';

205 切換系統的下一個日誌檔案
alter system switch logfile; (10G就會產生歸檔檔案)

206 定義自動歸檔
alter system set log_archive_start=true scope=spfile; (9i)(10G不用設)

207 檢視資料庫的歸檔的資訊
select * from v$log;

208 檢視曾經做過哪些歸檔及路徑
select * from v$archived_log;

209 檢視有哪還沒有做歸檔的資訊
select * from v$archive;

210 設定歸檔路徑2暫時不歸檔和啟用歸檔
alter system set log_archive_dest_state_2=defer;
alter system set log_archive_dest_state_2=enable;

211 檢視最少路徑歸檔數目的引數
show parameter log_archive_min_succeed_dest

212 檢視歸檔路徑的檔名格式引數
show parameter log_archive_format

213 查改歸檔檔名的格式
alter system set log_archive_format='mydb_%s_%r_%t.log' scope=spfile;

214 顯示出快速恢復區的大小和路徑
show parameter db_recovery_file_dest
show parameter db_recovery_file_dest_size

215 更改歸檔路徑到到快速恢復區
alter system set log_archive_dest_1='location=use_db_recovery_file_dest';

216 更改快速恢復區的路徑
alter system set db_recovery_file_dest='e:recover';

217 檢視快速恢復區的使用情況
select * from v$recovery_file_dest;

218 更改快速恢復區的大小
alter system set db_recovery_file_dest_size=10g;
219 檢視資料庫的歸檔模式
select log_mode from v$database;
archive log list

220 檢視歸檔檔案的歸檔路徑
show parameter log_archive_dest
select * from v$archive_dest;

221 檢視歸檔檔案
select * from v$archive;

222 檢視曾經歸檔過的記錄
select * from v$archived_log;

223 啟動線上備份表空間
alter tablespace users begin backup;

224 查詢指定表空間的檔案路徑
select file_name from dba_data_files where tablespace_name='USERS';

225 在SQL狀態上暫時離開返回到SHELL
host ocopy user*.dbf e:backup

226 結束生成備份表空間
alter tablespace users end backup;

227 備份資料庫的控制檔案
alter database backup controlfile to 'e:backupcontrol01.ctl';

228 生成建立控制檔案的指令碼
alter database backup controlfile to trace as 'e:backupcontrol01.sql';

229 查詢哪個檔案需要恢復
select * from v$recover_file;

230 查詢指定檔案號的詳細資訊
select * from v$datafile where file#=6;

231 查詢有哪些需要歸檔
select * from v$recovery_log;

232 恢復指字的資料檔案
recover datafile 6;

233 建立一個例子表
create table a11 tablespace mytbs3 as select * from dba_objects;

233 查詢有沒有指定的檔案
select * from dba_extents where file_id=6;

224 自動找到歸檔日誌恢復相應資料檔案
recover AUTOMATIC datafile 6;

225 將一個表空間設定成不可用
ALTER TABLESPACE USERS OFFLINE IMMEDIATE

226 恢復指定表空間
RECOVER TABLESPACE USERS;

227 將指定的表檔案設定成不可用
ALTER DATABASE DATAFILE 6 OFFLINE;

228 將指定的表檔案設定成線上
ALTER DATABASE DATAFILE 6 ONLINE;

229 建立一個測試表
CREATE TABLE TEST (A DATE);

230 插入當前系統日期
INSERT INTO TEST VALUES(SYSDATE);

231 查詢TEST的值
SELECT * FROM TEST;

232 在登錄檔裡的設定日期格式
NLS_DATE_FORMAT=YYYY-MM-DD HH24:MI:SS

233 恢復到指定的時間點
RECOVER DATABASE UNTIL TIME '2006-11-26 10:49:43';

234 開啟資料庫並重置重做日誌
alter database open resetlogs;

235 恢復控制檔案
RECOVER DATABASE using backup controlfile UNTIL cancel;

236 追加臨時表空間
alter tablespace temp add tempfile 'd:oradatamydbtemp01.dbf' size 10m reuse;

237 Rman的連線
connect target /

238 顯示要備份的資料庫檔案
report schema;

239 在RMAN的指定位置來備份檔案
run {
allocate channel ch1 type disk format 'e:rman%U.bak' maxpiecesize=2g;
backup database;
}

240 在RMAN的顯示威者預設設定
show all;

backup database;

241 配置預設的路徑
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT 'E:RMAN%U.BAK' MAXPIECESIZE 2G;

242 清除預設配置
CONFIGURE CHANNEL DEVICE type DISK clear;

243 配置並行數
CONFIGURE DEVICE TYPE DISK PARALLELISM 2;

244 配置自動備份控制檔案
CONFIGURE CONTROLFILE AUTOBACKUP on;

245 配置有益度
CONFIGURE RETENTION POLICY TO REDUNDANCY 2;

246 配置可以恢復到7天內的保留視窗
CONFIGURE RETENTION POLICY TO recovery window of 7;

247 備份表空間
backup tablespace users;

248 備份資料檔案
backup datafile 6;

249 備份前一天的重做日誌
backup archivelog until time 'sysdate-1';

250 備份SP檔案
backup spfile;

251 備份當前的控制檔案
backup current controlfile;

252 列出所有的備份集
list backupset ;

253 列出所有的彙總備份集
list backupset summary;

254 列出具體的備份資訊
list backupset 16

255 刪除備份集13
delete backupset 13;

256 不提示刪除所有的備份集
delete noprompt backupset;

257 凡是USERS的備份都刪除
delete backup of tablespace users;

258 列出哪些不需要的備份集
report obsolete ;

259 邊備份邊壓縮資料庫
backup as compressed backupset database;

260 增量備份時的0級備份一個表空間
backup incremental level 0 tablespace users;

261 2級備份累積備份
backup incremental level 2 cumulative tablespace users;

262 刪除指定日期的歸檔日誌
DELETE ARCHIVELOG UNTIL TIME 'SYSDATE-1/24';


263 在RMAN恢復指定表空間
RUN {
SQL 'ALTER TABLESPACE USERS OFFLINE IMMEDIATE';
RESTORE TABLESPACE USERS;
RECOVER TABLESPACE USERS;
SQL 'ALTER TABLESPACE USERS ONLINE';
}

264 在RMAN的恢復控制檔案
STARTUP NOMOUNT
RESTORE CONTROLFILE FROM AUTOBACKUP;
ALTER DATABASE MOUNT;
RESTORE DATABASE VALIDATE;
RECOVER DATABASE ;
ALTER DATABASE OPEN RESETLOGS;

265 查詢資料庫的字符集
select * from database_properties where property_name like 'NLS_CHA%';
NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK

266 匯出資料到一個檔案中
exp userid=system/oracle file=full.dmp full=y
exp userid=system/oracle file=full1.dmp,full2.dmp,full3.dmp filesize=2g full=y direct=y log=full.log feedback=10000

267 匯出指定使用者的表
exp userid=system/oracle file=gary.dmp wner=gary,wei direct=y log=gary
exp userid=system/oracle file=gary.dmp wner=gary direct=y log=gary.log

268 匯出指定表
exp userid=system/oracle file=gary_a.dmp tables=gary.a direct=y log=gary

269 匯出指定表
exp userid=system/oracle file=gary_a1.dmp tables=gary.a query='where wner=''GARY''' log=gary.LOG

270 檢視匯出的幫助資訊
exp -help

271 刪除gary的使用者
drop user gary cascade;

272 重建使用者GARY
CREATE USER "GARY" PROFILE "DEFAULT" IDENTIFIED BY "GARY" ACCOUNT UNLOCK

273 授權使用者GARY
GRANT UNLIMITED TABLESPACE,CONNECT,RESOURCE TO "GARY";

274 匯入使用者GARY的資料
imp userid=system/oracle fromuser=gary touser=gary show=y
imp userid=system/oracle fromuser=gary touser=gary file=full.dmp log=imp.log
imp userid=system/oracle fromuser=gary touser=wei file=gary.dmp log=imp.log

275 查詢狀態
select object_name,object_type,owner from dba_objects where status='INVALID';

EXEC UTL_RECOMP.RECOMP_PARALLEL

276 建立物件,允許可以用這個目錄來匯入匯出
create directory mydir as 'e:expdata';

277 授權使用者的許可權
grant read,write on directory mydir to gary;

278 匯出資料
expdp userid=gary/gary dumpfile=gary directory=mydir PARALLEL=2 schemas=gary job_name=gary_job
expdp userid=gary/gary attach=gary_job

268 查詢任務
SELECT * FROM V$DATAPUMP_JOB;

269 匯入資料
impdp userid=system/oracle dumpfile=gary directory=mydir job_name=gary_job

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/16486600/viewspace-521259/,如需轉載,請註明出處,否則將追究法律責任。

相關文章