国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > Oracle > 正文

Oracle數據庫執行腳本常用命令小結

2024-08-29 13:58:44
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了Oracle數據庫執行腳本常用命令小結的相關資料,需要的朋友可以參考下
 

1. 執行一個SQL腳本文件

 

復制代碼代碼如下:

sqlplus user/pass@servicename<file_name.sql

 

 

復制代碼代碼如下:

SQL>start file_names

 

 

復制代碼代碼如下:

SQL>@ file_name

 

我們可以將多條sql語句保存在一個文本文件中,這樣當要執行這個文件中的所有的sql語句時,用上面的任一命令即可,這類似于dos中的批處理。

@與@@的區別是什么?

@等于start命令,用來運行一個sql腳本文件。

@命令調用當前目錄下的,或指定全路徑,或可以通過SQLPATH環境變量搜尋到的腳本文件。該命令使用是一般要指定要執行的文件的全路徑,否則從缺省路徑(可用SQLPATH變量指定)下讀取指定的文件 www.111Cn.net。

@@用在sql腳本文件中,用來說明用@@執行的sql腳本文件與@@所在的文件在同一目錄下,而不用指定要執行sql腳本文件的全路徑,也不是從SQLPATH環境變量指定的路徑中尋找sql腳本文件,該命令一般用在腳本文件中。

如:在c:temp目錄下有文件start.sql和nest_start.sql,start.sql腳本文件的內容為:

@@nest_start.sql – - 相當于@ c:tempnest_start.sql

則我們在sql*plus中,這樣執行:

SQL> @ c:tempstart.sql

2. 重新運行上一次運行的sql語句

SQL>/

3. 將顯示的內容輸出到指定文件

 

復制代碼代碼如下:

SQL> SPOOL file_name

 

在屏幕上的所有內容都輸入到該文件中,包括你輸入的sql語句。
通常情況下,我們使用SPOOL方法,將數據庫中的表導出為文本文件的時候會采用兩種方法,如下述:

方法一:采用以下格式腳本

set colsep ‘|'; –設置|為列分隔符set trimspool on;set linesize 120;set pagesize 2000;set newpage 1;set heading off;set term off;set num 18;set feedback off;spool 路徑+文件名;select * from tablename;spool off;

方法二:采用以下腳本

set trimspool onset linesize 120set pagesize 2000set newpage 1set heading offset term offspool 路徑+文件名select col1||','||col2||','||col3||','||col4||'..' from tablename;spool off

附一些基本命令

1、得到數據庫名和創建日期

 

復制代碼代碼如下:

SELECT name, created, log_mode, open_mode FROM v$database;

 

2、ORACLE數據庫的計算機的主機名,ORACLE數據庫的實例名及ORACLE數據庫管理系統的版本信息

 

復制代碼代碼如下:

SELECT host_name, instance_name, version FROM v$instance;

 

3、為了知道oracle數據庫版本的一些特殊信息

 

復制代碼代碼如下:

select * from v$version;

 

4、獲取控制文件名字

 

復制代碼代碼如下:

select * from v$controlfile;

 

5、得到Oracle數據庫的重做日志配置信息

 

復制代碼代碼如下:

SELECT group#, members, bytes, status, archived FROM v$log;
select GROUP#,MEMBER from v$logfile;

 

6、獲取oracle的每個重做日志(成員)文件所存放的具體位置

 

復制代碼代碼如下:

select * from v$logfile;

 

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

 

復制代碼代碼如下:

archive log list

 

8、知道ORACLE數據庫中到底有多少表空間以及每個表空間的狀態

select tablespace_name, block_size, status, contents, logging from dba_tablespaces;select tablespace_name, status from dba_tablespaces;

9、知道每個表空間存在哪個磁盤上以及文件的名字等信息

SELECT file_id, file_name, tablespace_name, status, bytes from dba_data_files;select file_name, tablespace_name from dba_data_files;

10、知道Oracle數據庫系統上到底有多少用戶和都是什么時候創建的

select username,created from dba_users;select username, DEFAULT_TABLESPACE from dba_users;

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

select * from v$archivedselect * from v$archived_logselect * from v$backupselect * from v$databaseselect * from v$datafileselect * from v$logselect * from v$logfileselect * from v$loghistselect * from v$tablespaceselect * from v$tempfile

12、控制文件由兩大部份組成:可重用的部份和不可重用的部分。可重用的部分的大小可用

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

MAXDATAFILESMAXINSTANCESMAXLOGFILESMAXLOGHISTORYMAXLOGMEMBERS

13、查看控制文件的配置

SELECT type, record_size, records_total, records_used FROM v$controlfile_record_section;

14、如果您的顯示被分成了兩部分,您需要使用類似于set pagesize 100的SQL*Plus命令先格式化輸出。有關的格式化輸出命令有以下這些:

record_size: 為每個記錄的字節數。
records_total:為該段所分配的記錄個數。
records_used:為該段所使用的記錄個數。

15、知道控制文件中的所有數據文件(DATAFILE),表空間(TABLESPACE),和重做日志(REDO LOG)所使用的記錄情況

SELECT type, record_size, records_total, records_usedFROM v$controlfile_record_sectionWHERE type IN ( ‘DATAFILE', ‘TABLESPACE', ‘REDO LOG');

16、獲取控制文件名字

select value from v$parameter where name ='control_files';或者:select * from v$controlfile

17、如何在一個已經安裝的Oracle數據庫中添加或移動控制文件呢?

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

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

b、正常關閉Oracle數據庫。

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

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

e、重新啟動Oracle數據庫。

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

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

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

SQL> alter system set control_files =‘D:Disk3CONTROL01.CTL',‘D:Disk6CONTROL02.CTL',‘D:Disk9CONTROL03.CTL' SCOPE=SPFILE;

18、由于控制文件是一個極其種要的文件,除了以上所說的將控制文件的多個副本存在不同的硬盤上的保護措施外,在數據庫的結構變化之后,您應立即對控制文件進行備份。可以用Oracle命令來對控制文件進行備份:

alter database backup controlfile to ‘D:backupcontrol.bak';

19、您也可將備份到一個追蹤文件中。該追蹤文件包含有重建控制文件所需的SQL語句。可使用以下SQL語句來產生這一追蹤文件:

alter database backup controlfile to trace;

20、正常關閉oracle命令

shutdown immeditae

PS:oracle客戶端連接的文件配置:

oracle的目錄/network/ADMIN/tnsnames.ora

內容:

MIMI(客戶端連接的名稱) =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.254)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = NTDB.RUNNER)))

修改表結構

alter table m_gl_gls3_history add (aaaaa varchar2(20),bbbbb varchar2(10))alter table m_gl_gls3_history modify (aaaaa varchar2(10))--要改變表中的字段的類型或縮小字段長度,該字段的所有記錄值必須為空。--如果改字段存在記錄值,則該字段長度只能擴大,不能縮小。alter table m_gl_gls3_history drop (aaaaa , bbbbb )
 


注:相關教程知識閱讀請移步到oracle教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 深圳市| 苍南县| 海南省| 靖边县| 龙海市| 西华县| 苍梧县| 商河县| 任丘市| 清流县| 安化县| 伊春市| 敦煌市| 阳春市| 望都县| 平南县| 江川县| 塔城市| 山阳县| 衡水市| 广元市| 襄汾县| 安平县| 万载县| 丽江市| 河东区| 石嘴山市| 中卫市| 怀远县| 远安县| 吉木乃县| 泸定县| 满洲里市| 富源县| 福海县| 无锡市| 宝清县| 临城县| 锦屏县| 璧山县| 乌拉特前旗|