Oracle的數據庫,指的是存儲數據的地方,可理解為存放數據的文件,只是其中存放的數據有整體結構性。
Oracle的實例指的是一組內存進程,也就是運行著的程序。我們向數據庫寫數據或讀數據,則只能通過實例進行。
同一時間,一個實例只能打開一個數據庫,也就是一個實例只能操作或管理一個數據庫;通常,同一時間,一個數據庫只能被一個實例打開,但RAC情況除外。
安裝Oracle時,通常會安裝一個實例——數據庫對(當然可以裝多對),而且他們的名字相同(也就是實例和數據庫名字相同),他們的名字當然可以不同,不管相不相同,他們的聯系是通過xxx/pfile/init.ora初始化文件聯系的。因為xxx就是實例的名字,而xxx.ora中的db_name,則記錄相應數據庫的名字。
下面演示啟動xxx實例,掛接數據庫,打開數據庫,關閉數據庫、卸載數據庫、關閉實例的過程。
1、為了能進行以上操作,oracle的監聽必須首先啟動,這樣,我們才有機會連接到Oracle服務器端。可以通過如下命令進行:lsnrctl start;
2、Oracle啟動,Windows下通常在服務裡啟動oracle,一般情況下同時啟動相關實例,但也可以設置啟動oracle時,不啟動任何指定實例,這樣Oracle的啟動速度相當快。
3、設定我們需要啟動的相關實例。在console窗口中,輸入 set Oracle_sid=xxx (unix環境下用export命令)
4、用/nolog方式,進入sqlplus。 在console窗口中,輸入 sqlplus /nolog ,然後回車,則進入sqlplus環境。
5、輸入命令 connect sys as sysdba 回車後,提示輸入口令,直接回車,則以sysdba的角色連接到Oracle的空閒實例。
6、輸入命令 startup nomount 回車,則啟動了xxx實例,由set Oracle_sid=xxx設置。
7、輸入命令 alter database mount 回車,則將相應的數據庫掛接到xxx實例。
8、輸入命令 alter database open 回車,則打開了相應數據庫。
9、輸入命令 shutdown,則關閉數據庫、卸載數據庫、關閉實例。