熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Oracle >> 正文

Oracle數據庫基本常用命令匯總

2013-11-13 22:26:24  來源: Oracle 
以下是對Oracle中的數據庫基本常用命令進行了總結介紹需要的朋友可以過來參考下  

  得到數據庫名和創建日期
SELECT name created log_mode open_mode FROM v$database;

  ORACLE數據庫的計算機的主機名ORACLE數據庫的實例名及ORACLE數據庫管理系統的版本信息
SELECT host_name instance_name version FROM v$instance;

  為了知道oracle數據庫版本的一些特殊信息
select * from v$version;

  獲取控制文件名字
select * from v$controlfile;

  得到Oracle數據庫的重做日志配置信息
SELECT group# members bytes status archived FROM v$log;
select GROUP#MEMBER from v$logfile;

  獲取oracle的每個重做日志(成員)文件所存放的具體位置
select * from v$logfile;

  知道ORACLE數據庫的備份和恢復策略和歸檔文件的具體位置
archive log list

  知道ORACLE數據庫中到底有多少表空間以及每個表空間的狀態
select tablespace_name block_size status contents logging from dba_tablespaces;
select tablespace_name status from dba_tablespaces;

  知道每個表空間存在哪個磁盤上以及文件的名字等信息
SELECT file_id file_name tablespace_name status bytes from dba_data_files;
select file_name tablespace_name from dba_data_files;

  知道Oracle數據庫系統上到底有多少用戶和都是什麼時候創建的
select usernamecreated from dba_users;
select username DEFAULT_TABLESPACE from dba_users;

  從控制文件中取出信息涉及到以下一些相關的命令

復制代碼 代碼如下:
select * from v$archived
select * from v$archived_log
select * from v$backup
select * from v$database
select * from v$datafile
select * from v$log
select * from v$logfile
select * from v$loghist
select * from v$tablespace
select * from v$tempfile

  
控制文件由兩大部份組成可重用的部份和不可重用的部分可重用的部分的大小可用CONTROL_FILE_RECORD_KEEP_TIME 參數來控制該參數的默認值為即可重用的部份的內容保留一周之後這部份的內容可能被覆蓋可重用的部份是供恢復管理器來使用的這部份的內容 可以自動擴展Oracle數據庫管理員可以使用CREAT DATABASE或 CREAT CONTROLFILE語句中的下列關鍵字(參數)來間接影響不可重用的部份的大小

復制代碼 代碼如下:
MAXDATAFILES
MAXINSTANCES
MAXLOGFILES
MAXLOGHISTORY
MAXLOGMEMBERS

  
查看控制文件的配置
SELECT type record_size records_total records_used  FROM v$controlfile_record_section;

  如果您的顯示被分成了兩部分您需要使用類似於set pagesize 的SQL*Plus命令先格式化輸出有關的格式化輸出命令有以下這些
record_size  為每個記錄的字節數
records_total為該段所分配的記錄個數
records_used為該段所使用的記錄個數

  知道控制文件中的所有數據文件(DATAFILE)表空間(TABLESPACE)和重做日志(REDO LOG)所使用的記錄情況
SELECT type record_size records_total records_used
FROM  v$controlfile_record_section
WHERE type IN ( ‘DATAFILE ‘TABLESPACE ‘REDO LOG);

  獲取控制文件名字
select value from v$parameter where name =control_files;
或者select * from v$controlfile

  如何在一個已經安裝的Oracle數據庫中添加或移動控制文件呢?
以下是在一個已經安裝的Oracle數據庫中添加或移動控制文件的具體步驟

  a利用數據字典v$controlfile來獲取現有控制文件名字

  b正常關閉Oracle數據庫

  c將新的控制文件名添加到參數文件的CONTROL_FILES參數中

  d使用操作系統的復制命令將現有控制文件復制到指定位置

  e重新啟動Oracle數據庫

  f利用數據字典v$controlfile來驗證新的控制文件名字是否正確

  g如果有誤重做上述操作如果無誤刪除無用的舊控制文件

   如果您使用了服務器初始化參數文件(SPFILE)您不能關閉Oracle數據庫而且應該在第步使用alter system set control_files的Oracle命令來改變控制文件的位置

復制代碼 代碼如下:
SQL> alter system set control_files =
‘D:\Disk\CONTROLCTL
‘D:\Disk\CONTROLCTL
‘D:\Disk\CONTROLCTL SCOPE=SPFILE;

  
由於控制文件是一個極其種要的文件除了以上所說的將控制文件的多個副本存在不同的硬盤上的保護措施外在數據庫的結構變化之後您應立即對控制文件進行備份可以用Oracle命令來對控制文件進行備份
alter database backup controlfile to ‘D:\backup\controlbak;

  您也可將備份到一個追蹤文件中該追蹤文件包含有重建控制文件所需的SQL語句可使用以下SQL語句來產生這一追蹤文件
alter database backup controlfile to trace;

  正常關閉oracle命令
shutdown immeditae


From:http://tw.wingwit.com/Article/program/Oracle/201311/19116.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.