當前位置:首頁 » 操作系統 » oracle資料庫名sid

oracle資料庫名sid

發布時間: 2023-03-02 09:41:58

① Oracle 中的SID是不是資料庫的名字

是的.
你說的SID是單指SID還是說ORACLE_SID
SID: system identifier 實例名,又叫系統標識符,用於唯一地標識一個實例,實例是內存和後台進程的集合.

在ORACLE7、8資料庫中只有資料庫名(db_name)和資料庫實例名(instance_name)。在ORACLE8i、9i中出現了新的參數,即資料庫域名(db_domain)、服務名(service_name)、以及操作系統環境變數(ORACLE_SID)。這些都存在於同一個資料庫中的標識,用於區分不同資料庫的參數。
一、什麼是資料庫名(db_name)?
資料庫名是用於區分數據的內部標識,是以二進制方式存儲於資料庫控制文件中的參數,在數據安裝或創建之後將不得修改。資料庫安裝完成後,該參數被寫入資料庫參數文件pfile中,格式如下:

db_name="orcl" #(不允許修改)
db_domain=dbcenter.toys.com
instance_name=orcl
service_names=orcl.dbcenter.toys.com
control_file=(...............
.........

在每一個運行的ORACLE8i資料庫中都有一個資料庫名(db_name),如果一個伺服器程序中創建了兩個資料庫,則有兩個資料庫名。其控制參數據分屬在不同的pfile中控制著相關的資料庫。
二、什麼是資料庫實例名(instance_name)
資料庫實例名則用於和操作系統之間的聯系,用於對外部連接時使用。在操作系統中要取得與資料庫之間的交互,必須使用資料庫實例名。例如,要和某一個資料庫server連接,就必須知道其資料庫實例名,只知道資料庫名是沒有用的,與資料庫名不同,在數據安裝或創建資料庫之後,實例名可以被修改。資料庫安裝完成後,該實例名被寫入資料庫參數文件pfile中,格式如下:
db_name="orcl" #(不允許修改)
db_domain=dbcenter.toys.com
instance_name=orcl #(可以修改,可以與db_name相同也可不同)
service_names=orcl.dbcenter.toys.com
control_file=(...............
.........
資料庫名與實例名之間的關系。
資料庫名與實例名之間的關系一般是一一對應關系,有一個資料庫名就有一個實例名,如果在一個伺服器中創建兩個資料庫,則有兩個資料庫名,兩個資料庫實例名,用兩個標識確定一個資料庫,用戶和實例相連接。
但在8i、9i的並行伺服器結構中,資料庫與實例之間不存在一一對應關系,而是一對多關系,(一個資料庫對應多個實例,同一時間內用戶只一個實例相聯系,當某一實例出現故障,其它實例自動服務,以保證資料庫安全運行。)
三、操作系統環境變數(ORACLE_SID)
在實際中,對於資料庫實例名的描述有時使用實例名(instance_name)參數,有時使用ORACLE_SID參數。這兩個都是資料庫實例名,它們有什麼區別呢?(經常弄混)
[code:1:1aaf156970]
(ORACLE_SID)
OS<----------------> ORACLE 資料庫 <--------(Instance_name(實例名))
上圖表示實例名instance_name、ORACLE_SID與資料庫及操作系統之間的關系,雖然這里列出的兩個參數都是資料庫實例名,但instance_name參數是ORACLE資料庫的參數,此參數可以在參數文件中查詢到,而ORACLE_SID參數則是操作系統環境變數。
操作系統環境變數ORACLE_SID用於和操作系統交互。也就是說,在操作系統中要想得到實例名,就必須使用ORACLE_SID。此參數與ORACLE_BASE、ORACLE_HOME等用法相同。在資料庫安裝之後,ORACLE_SID被用於定義資料庫參數文件的名稱。如:
$ORACLE_BASE/admin/DB_NAME/pfile/init$ORACLE_SID.ora。
定義方法:
export ORACLE_SID=orcl
如果在同一伺服器中創建了多個資料庫,則必然同時存在多個資料庫實例,這時可以重復上述定義過程,以選擇不同實例。
還可以用
[oracle@Datacent]$ . oraenv
來切換不同的ORACLE_SID來通過操作系統來啟動不同的實例(instance)

② 如何區分Oracle的資料庫,實例,服務名,SID

實例

  1. 實例就是一組操作系統進程(或者是一個多線程的進程)以及一些內存。這些進程可以操作資料庫;實例 就是治理相關庫的內存結構的名字(由SGA、PGA、伺服器進程、用戶進程、後台進程等組成)

  2. 資料庫

資料庫只是一個文件集合(包括數據文件、臨時文件、重做日誌文件和控制文件)。在任何時刻,一個實例只能有一組相關的文件(與一個資料庫關聯)。資料庫 就是實際的磁碟上的文件(數據文件、日誌文件、控制文件等),負責保存數據,但由對應的實例來操作它的數據

3.服務名

服務名 就是對外公布的名稱,為網路監聽服務

4.SID

sid用於實例區分各個資料庫,service name用於外部鏈接。

③ sid是什麼意思,他在oracle資料庫中配置資料庫連接時需要,但是我找不到sid具體是什麼。

SID指的是你的全局資料庫名,也就是你建資料庫時的名字,不是用戶名哈;Oracle 10g 資料庫安裝過程中經常彈出提示「嚴重:監聽程序未啟動或資料庫服務未注冊到該監聽程序。啟動該監聽程序並注冊資料庫服務, 然後重新運行 EM Configuration Assistant。」,這個很好解決,只需要在app\Administrator\proct\11.2.0\dbhome_1\network\admin\listener.ora中加入:SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = C:\oracle\proct\10.2.0\db_1)
(PROGRAM = extproc)
)
此句是添加的,下面部分為添加
(SID_DESC =
(GLOBAL_DBNAME = ORCL)
(ORACLE_HOME = C:\oracle\proct\10.2.0\db_1)
(SID_NAME = ORCL)
)
上面部分是添加的
)

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = VirtualXP-45565)(PORT = 1521))
)
)
就可以解決,這里GLOBAL_DBNAME = ORCL和SID_NAME = ORCL這兩句中的ORCL就是SID,也就是全局資料庫名字 ,記得改了後要重新啟動資料庫服務,服務在電腦的服務里啟動

④ oracle中全局資料庫名和SID的區別

  • 全局資料庫名:是將資料庫與任何其他資料庫唯一標識出來的資料庫全稱。全局資料庫名的格式為<database_name>.<database_domain>。例如,student.cs.hubu是一個典型的全局資料庫名。資料庫名部分(如student)是資料庫的簡單名稱,資料庫域部分(如cs.hubu)指定資料庫所在的域,它通常和企業內的網路域相同。全局資料庫名的資料庫名部分不能超過8個字元,並且只能包含字母、數字字元和句點(.)字元。

  • SID(System Identifier,系統標識符):用來標識Oracle資料庫的特定常式。對於任何一個資料庫,都至少有一個引用資料庫的常式。SID可以是未被此計算機上其他常式使用的任何名稱。SID是Oracle資料庫常式的唯一標識符,最多隻能有8個字母、數字字元。每個資料庫常式對應一個SID和一系列資料庫文件。例如,當創建SID為XXX的資料庫時,將同時創建資料庫常式及其資料庫文件(初始化參數文件、控制文件、重做日誌文件和數據文件)。

⑤ 對於Oracle,資料庫名,全局資料庫名,SID都是什麼啊麻煩舉例說下。

資料庫名:顧名思義,資料庫的名字。。例子:db10
全局名:是庫名的完整名,例子:db10.localdomain
他們的關系:庫名可以看成是人的小名,而全局名可看成是人的全名。比如有2個網路,他們都有個DB10庫,但他們的域名肯定是不同的(上面的localdomain)。同一小名的人可以有多個,但全名必須是不同的。
SID:實例名,一般跟資料庫名一樣,是系統用來識別庫的,用ORACLE_SID這個環境變數來識別

⑥ 請教oracle全局資料庫名和SID區別

一、資料庫名
就是在你安裝oracle軟體過程中創建的資料庫,或者是安裝完後,自己再創建的數據名稱。主要用於一個oracle中安裝了多個庫,
他們之間的區分。一個庫會在windows的服務中生成一個oracle_service.資料庫名是在安裝資料庫、創建新的資料庫、創建資料庫控
制文件、修改數據結構、備份與恢復資料庫時都需要使用到的。

查詢當前數據名
方法一:select name from v$database;
方法二:show parameter db
二、資料庫實例名[SID]
資料庫實例名是用於和操作系統進行聯系的標識,就是說資料庫和操作系統之間的交互用的是資料庫實例名。實例名也被寫入參數文件
中,該參數為instance_name,在winnt平台中,實例名同時也被寫入注冊表。資料庫名和實例名可以相同也可以不同。在一般情況下,
資料庫名和實例名是一對一的關系,但如果在oracle並行伺服器架構(即oracle實時應用集群)中,資料庫名和實例名是一對多的關系。
(就是一個oracle中創建多個庫的時候,每個庫和操作系統之間通信的身份標示,和我們用戶沒有關系嘀!)
查詢當前資料庫實例名
方法一:select instance_name from v$instance;
方法二:show parameter instance
三、資料庫域名
在分布工資料庫系統中,不同版本的資料庫伺服器之間,不論運行的操作系統是unix或是windows,各伺服器之間都可以通過資料庫
鏈路進行遠程復制,資料庫域名主要用於oracle分布式環境中的復制。
舉例說明如:
全國交通運政系統的分布式資料庫,其中:
福建節點: fj.jtyz
福建廈門節點: xm.fj.jtyz
江西: jx.jtyz
江西上饒:sr.jx.jtyz
這就是資料庫域名。
資料庫域名在存在於參數文件中,他的參數是db_domain
查詢資料庫域名
方法一:select value from v$parameter where name = 'db_domain';
方法二:show parameter domain
四、全局資料庫名
全局資料庫名=資料庫名+資料庫域名,如前述福建節點的全局資料庫名是:oradb.fj.jtyz
五、資料庫服務名
從oracle9i版本開始,引入了一個新的參數,即資料庫服務名。參數名是SERVICE_NAME。該名稱主要是oracle客戶端和oracle建立服務的
時候使用,好像沒有多麼有用的價值!
查詢資料庫服務名
方法一:select value from v$parameter where name = 'service_name';
方法二:show parameter service_name
(注釋:一般情況下我們開發中用到的資料庫是單資料庫實例,就是oracle中只有一個庫。這個時候大部分都有:
資料庫服務名 = 全局資料庫名 = 資料庫名[+ 資料庫域名] = SID)

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:594
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:889
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:583
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:766
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:685
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:1014
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:257
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:115
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:807
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:714