最近項目要用Oracle數據庫,之前沒搞過,近2天遇到好多問題,現在總結一下,做個備份。
一、關於Oracle安裝
1.服務器端 從Oracle官網下載文件,file1和file2,解壓之后安裝就行了,注意目錄不要有中文和空格。
2.然后配置監聽器和服務命名:
2.1.監聽器:
2.2.服務命名
3.接着是本地客戶端的安裝:
3.1 我在這下載的簡易客戶端:http://pan.baidu.com/share/link?shareid=514153&uk=3255414737 下載之后解壓。
3.2 把服務器上的Oracle目錄下的 G:\app\Administrator\product\11.2.0\dbhome_1 找到NETWORK文件夾,拷貝一下,貼到上面那個解壓的目錄里面,(其實主要是拷貝tnsnames.ora文件,記錄的連接信息).
附圖:簡易客戶端目錄:
3.3 下一步安裝pl sql develop. 進入之后 在 perference->Connection里面設置OCI Library和Oracle_Home,例如本機設置為:
Oracle Home :D:\instantclient_11_2
OCI Library : D:\instantclient_11_2\oci.dll
3.4 配置2個環境變量: TNS目錄和編碼
TNS_ADMIN : D:\instantclient_11_2\NETWORK\ADMIN
NLS_LANG :SIMPLIFIED CHINESE_CHINA.ZHS16GBK
然后重新允許plsql dev 下拉列表就有數據庫了。參考:http://it.oyksoft.com/post/6003/
二、C# 連接Oracle 報錯:System.Data.OracleClient 需要 Oracle 客戶端軟件 8.1.7 或更高版本
網上有說因為NTFS格式 的 權限問題導致了,我到服務器改了一下發現沒有效果。后來花1個積分在CSDN上下了一個僅3行txt文檔,完美解決。
文檔內容如下:
(1)在Oracle官方下載instantclient-basic-win32-XXX.zip
(2)解壓文件
(3)復制“oci.dll”與“oraocieiXX.dll”(注:如果是11g的話就應是“oraociei11.dll”,以此類推)到C:\Windows
補充一下連接字符串:
String connection ="Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=60.190.222.192) (PORT=1521)))(CONNECT_DATA=(SERVICE_NAME= orcl)));User Id=xx; Password=xx"; OracleConnection conn = new OracleConnection(connection); conn.Open();