oracle64位數據庫服務器安裝之后環境變量配置和plsql配置和 數據庫裝載和啟動


在裝完64位的數據庫之后,有的時候回遇到無法在plsql上連接上數據的問題。

1,先到Oracle網站下載Instant Client :

http://www.oracle.com/technology/global/cn/software/tech/oci/instantclient/index.html

根據你的操作系統選擇不同的Instant Client版本

下載回是一個壓縮文件,解壓之后的文件夾叫:instantclient_11_2.放在你喜歡的目錄即可.我這里是將該文件夾放在了oracle的安裝根目錄app下了:F:\app\instantclient_11_2

2.在instantclient_11_2目錄下新建目錄network,在network目錄下再新建admin目錄,在admin目錄下新建文件tnsnames.ora,使用文本編輯器打開寫入如下內容:

ORCL=
(DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))

    )
    (CONNECT_DATA =
      (SID =orcl)
    )
)

注:這里可以將准備好的tnsnames.ora  、sqlnet.ora、listener.ora三個文件直接拷到instantclient_11_2下

3.配置oracle環境變量 和語言

設置oracle的home為服務器的路徑  ORACLE_HOME :   F:\app\ThinkPad\product\11.2.0\dbhome_1     

添加一個環境變量,名為TNS_ADMIN,值為tnsnames.ora文件所在路徑。比如我的本機為:F:\app\instantclient_11_2\network\admin

設置oracle語言  ,添加環境變量NLS_LANG ,值為SIMPLIFIED CHINESE_CHINA.ZHS16GBK

查詢oracle字符集的sql:select * from nls_instance_parameters;

查看NLS_LANGUAGE 的值

NLS_LANGUAGE

NLS_TERRITORY

4.設置plsql的

配置tools->preferences->connection

5、關閉PL/SQL Developer,重起Developer.

主機名就會出現在PL/SQL Developer的列表里,輸入用戶名密碼,就可以登錄遠程oracle 11g數據庫了。

補充Instant Client 說明

Oracle Instant client 是oracle提供的簡便客戶端, 支持多種平台. 可從oracle網站下載, 下載地址為
http://www.oracle.com/technology/global/cn/software/tech/oci/instantclient/index.html

包括如下內容:

Instant client Package - Basic 運行OCI, OCCI, 和JDBC-OCI應用程序需要的所有文件.

Instant client Package - Basic Lite: 只包含英語錯誤信息, 只支持unicode, ascii, 西歐字符集.

Instant client Package - JDBC Supplement  為jdbc增加了xa, 國際化和RowSet操作.

Instant Client Package - SQL *Plus 包含sqlplus和需要的庫文件

Instant client Package - SDK 使用Instant Client開發Oracle 應用程序需要的頭文件及示例makefile

Instant client package - ODBC 使用odbc時需要的庫, 不是所有平台都有. Linux平台包含.

Basic和Basic Lite兩個中必須選一個, 其他包都是可選的. 我下載了 Basic, JDBC supplement, SQL *Plus, SDK, ODBC. 解壓后放在一個文件夾下, 在這個文件夾下建立文件tnsnames.ora, 設置環境變量LD_LIBRARY_PATH和TNS_ADMIN指向解壓后的目錄, 就可以使用sqlplus了.

我下載的instant client版本為10.2.0.2.0, 測試了聯接到oracle 9.2.0.4和oracle 10.2.0.1.

Instant Client中不包含tnsping, exp/imp, rman, netca等工具. 如果需要這些工具則需要安裝oracle client

 

如果大家覺得這樣操作比較麻煩,可以使用使用 Navicat Lite for oracle 連接 Oracle 數據庫,

詳見 這篇文章。 http://www.linuxidc.com/Linux/2011-05/35598.htm

 

 6.裝載數據庫名open數據庫

conn sys/sys as sysdba
Shutdown abort;
Startup nomount;
select instance_name,status from v$instance;

 

 

數據庫帶到mount狀態
select value from v$spparameter where name='control_files';
Alter database mount;
Mount數據庫的過程是讀參數文件中描述的控制文件,校驗控制文件的正確性,將控制文件的內容讀入到
內存,mount是掛接的意思,是操作系統中的概念.一旦mount之后,就是將一個沒有意義的實例和一個
數據庫發生了聯系.因為實例是空殼.沒有任何數據庫和該實例發生關系,我們可以理解為實例是水泵,放
到哪個水塘里就會抽取哪里的數據,實例是通用的.mount的意思是將一個通用的水泵放入到指定的水塘.
mount是讀控制文件,控制文件中有數據文件和日志文件的信息.
select instance_name,status from v$instance;

 

 

打開數據庫
Alter database open;
讀控制文件中描述的數據文件
驗證數據文件的一致性,如果不一致,使用日志文件將數據庫文件恢復到一致的狀態.
數據庫open后,普通用戶才可以訪問數據庫
用戶的表才為可見
只讀方式open數據庫
Alter database open read only;
select OPEN_MODE from v$database;
默認的open方式為read write
想改read only為read write 必須重新啟動數據庫
我們現在回想一下數據庫啟動的三個台階,我們先讀的是參數文件,參數文件可以有我們來編寫.讀完參數
文件后又讀了控制文件,控制文件描述了數據文件和日志文件的信息,如果控制文件丟失可以重新建立,最
后是讀數據文件.數據文件里才存放了我們的數據.數據庫將啟動分為三個台階,目的是我們可以准確的知
道哪里有問題,迅速的排除.有點象老鼠拖木釺,大頭在后面.由最開始的一個1k的參數文件,最后到幾個t
的大型數據庫.當我們只打startup而不加任何參數的時候.默認是到open,等於startup open;
SQL> startup
Oracle instance started.

一般情況下,alter database open 和starup的作用是一樣的,都是打開實例。

注:如果沒有裝載和open數據庫,則在服務和應用程序中無法啟動oracle的listener進程,也無法在plsql中連接到該數據庫。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM