主頁(yè) > 知識(shí)庫(kù) > Oracle數(shù)據(jù)庫(kù)執(zhí)行腳本常用命令小結(jié)

Oracle數(shù)據(jù)庫(kù)執(zhí)行腳本常用命令小結(jié)

熱門標(biāo)簽:山東crm外呼系統(tǒng)軟件 愛客外呼系統(tǒng)怎么樣 百度地圖標(biāo)注途經(jīng)點(diǎn) 哪個(gè)400外呼系統(tǒng)好 哈爾濱電話機(jī)器人銷售招聘 慧營(yíng)銷crm外呼系統(tǒng)丹丹 地圖標(biāo)注養(yǎng)老院 開發(fā)外呼系統(tǒng) 圖吧網(wǎng)站地圖標(biāo)注

1. 執(zhí)行一個(gè)SQL腳本文件

復(fù)制代碼 代碼如下:

sqlplus user/pass@servicenamefile_name.sql


復(fù)制代碼 代碼如下:

SQL>start file_names


復(fù)制代碼 代碼如下:

SQL>@ file_name

我們可以將多條sql語(yǔ)句保存在一個(gè)文本文件中,這樣當(dāng)要執(zhí)行這個(gè)文件中的所有的sql語(yǔ)句時(shí),用上面的任一命令即可,這類似于dos中的批處理。

@與@@的區(qū)別是什么?

@等于start命令,用來運(yùn)行一個(gè)sql腳本文件。

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

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

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

@@nest_start.sql – - 相當(dāng)于@ c:tempnest_start.sql

則我們?cè)趕ql*plus中,這樣執(zhí)行:

SQL> @ c:tempstart.sql

2. 重新運(yùn)行上一次運(yùn)行的sql語(yǔ)句

SQL>/

3. 將顯示的內(nèi)容輸出到指定文件

復(fù)制代碼 代碼如下:

SQL> SPOOL file_name

在屏幕上的所有內(nèi)容都輸入到該文件中,包括你輸入的sql語(yǔ)句。
通常情況下,我們使用SPOOL方法,將數(shù)據(jù)庫(kù)中的表導(dǎo)出為文本文件的時(shí)候會(huì)采用兩種方法,如下述:

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

set colsep ‘|'; –設(shè)置|為列分隔符
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 on
set linesize 120
set pagesize 2000
set newpage 1
set heading off
set term off
spool 路徑+文件名
select col1||','||col2||','||col3||','||col4||'..' from tablename;
spool off

附一些基本命令

1、得到數(shù)據(jù)庫(kù)名和創(chuàng)建日期

復(fù)制代碼 代碼如下:

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

2、ORACLE數(shù)據(jù)庫(kù)的計(jì)算機(jī)的主機(jī)名,ORACLE數(shù)據(jù)庫(kù)的實(shí)例名及ORACLE數(shù)據(jù)庫(kù)管理系統(tǒng)的版本信息

復(fù)制代碼 代碼如下:

SELECT host_name, instance_name, version FROM v$instance;

3、為了知道oracle數(shù)據(jù)庫(kù)版本的一些特殊信息

復(fù)制代碼 代碼如下:

select * from v$version;

4、獲取控制文件名字

復(fù)制代碼 代碼如下:

select * from v$controlfile;

5、得到Oracle數(shù)據(jù)庫(kù)的重做日志配置信息

復(fù)制代碼 代碼如下:

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

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

復(fù)制代碼 代碼如下:

select * from v$logfile;

7、知道ORACLE數(shù)據(jù)庫(kù)的備份和恢復(fù)策略和歸檔文件的具體位置

復(fù)制代碼 代碼如下:

archive log list

8、知道ORACLE數(shù)據(jù)庫(kù)中到底有多少表空間以及每個(gè)表空間的狀態(tài)

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

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

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

10、知道Oracle數(shù)據(jù)庫(kù)系統(tǒng)上到底有多少用戶和都是什么時(shí)候創(chuàng)建的

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

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

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

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

CONTROL_FILE_RECORD_KEEP_TIME參數(shù)來控制,該參數(shù)的默認(rèn)值為7天,即可重用的部份的內(nèi)容保留7天,一周之后這部份的內(nèi)容可能被覆蓋??芍赜玫牟糠菔枪┗謴?fù)管理器來使用的,這部份的內(nèi)容可以自動(dòng)擴(kuò)展。Oracle數(shù)據(jù)庫(kù)管理員可以使用CREAT DATABASE或 CREAT CONTROLFILE語(yǔ)句中的下列關(guān)鍵字(參數(shù))來間接影響不可重用的部份的大?。?br />

MAXDATAFILES
MAXINSTANCES
MAXLOGFILES
MAXLOGHISTORY
MAXLOGMEMBERS

13、查看控制文件的配置

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

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

record_size: 為每個(gè)記錄的字節(jié)數(shù)。
records_total:為該段所分配的記錄個(gè)數(shù)。
records_used:為該段所使用的記錄個(gè)數(shù)。

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

SELECT type, record_size, records_total, records_used
FROM v$controlfile_record_section
WHERE type IN ( ‘DATAFILE', ‘TABLESPACE', ‘REDO LOG');

16、獲取控制文件名字

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

17、如何在一個(gè)已經(jīng)安裝的Oracle數(shù)據(jù)庫(kù)中添加或移動(dòng)控制文件呢?

以下是在一個(gè)已經(jīng)安裝的Oracle數(shù)據(jù)庫(kù)中添加或移動(dòng)控制文件的具體步驟:

a、利用數(shù)據(jù)字典v$controlfile來獲取現(xiàn)有控制文件名字。

b、正常關(guān)閉Oracle數(shù)據(jù)庫(kù)。

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

d、使用操作系統(tǒng)的復(fù)制命令將現(xiàn)有控制文件復(fù)制到指定位置。

e、重新啟動(dòng)Oracle數(shù)據(jù)庫(kù)。

f、利用數(shù)據(jù)字典v$controlfile來驗(yàn)證新的控制文件名字是否正確。

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

注: 如果您使用了服務(wù)器初始化參數(shù)文件(SPFILE),您不能關(guān)閉Oracle數(shù)據(jù)庫(kù)而且應(yīng)該在第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、由于控制文件是一個(gè)極其種要的文件,除了以上所說的將控制文件的多個(gè)副本存在不同的硬盤上的保護(hù)措施外,在數(shù)據(jù)庫(kù)的結(jié)構(gòu)變化之后,您應(yīng)立即對(duì)控制文件進(jìn)行備份。可以用Oracle命令來對(duì)控制文件進(jìn)行備份:

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

19、您也可將備份到一個(gè)追蹤文件中。該追蹤文件包含有重建控制文件所需的SQL語(yǔ)句??墒褂靡韵耂QL語(yǔ)句來產(chǎn)生這一追蹤文件:

alter database backup controlfile to trace;

20、正常關(guān)閉oracle命令

shutdown immeditae

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

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

內(nèi)容:

MIMI(客戶端連接的名稱) =


(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.254)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = NTDB.RUNNER)
)
)

修改表結(jié)構(gòu)

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

您可能感興趣的文章:
  • Oracle數(shù)據(jù)庫(kù)自動(dòng)備份腳本分享(超實(shí)用)
  • Linux中Oracle服務(wù)啟動(dòng)和停止腳本與開機(jī)自啟動(dòng)
  • Oracle自動(dòng)備份腳本
  • Linux下通過腳本自動(dòng)備份Oracle數(shù)據(jù)庫(kù)并刪除指定天數(shù)前的備份
  • oracle自動(dòng)巡檢腳本生成html報(bào)告的方法

標(biāo)簽:周口 青島 承德 甘肅 武漢 開封 固原 和田

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Oracle數(shù)據(jù)庫(kù)執(zhí)行腳本常用命令小結(jié)》,本文關(guān)鍵詞  Oracle,數(shù)據(jù)庫(kù),執(zhí)行,腳本,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Oracle數(shù)據(jù)庫(kù)執(zhí)行腳本常用命令小結(jié)》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于Oracle數(shù)據(jù)庫(kù)執(zhí)行腳本常用命令小結(jié)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章