Db2
未找到數據庫名稱,但我可以使用 IBM Data Studio 進行連接。發生了什麼?
在 IBM Data Studio 中,我可以創建與名為DBEMP的遠端 IBM DB2 LUW 數據庫的連接並瀏覽模式和數據。
以下是創建數據庫連接的步驟:
- 在 IBM Data Studio 的 Database Adminstration Explorer 中,選擇:New -> New Connection to Database。
- 在對話框中選擇DB2 for Linux, UNIX, and Windows 。
- 在一般屬性中:
數據庫:DBEMP
主機:10.221.5.111
埠號:50001
使用者名:user1
密碼:***** 4. 點擊確定。
但是當我嘗試通過 telnet 命令連接到遠端數據庫伺服器(AIX v7)時:
telnet 10.221.5.111
注意:我使用 root 使用者登錄。
然後我執行這個命令:
/db2/V10.1/bin/db2 connect to DBEMP
我收到了這個錯誤:
SQL1013N 找不到數據庫別名或數據庫名稱“DBEMP”。SQLSTATE=42705
然後我也執行這個命令:
/db2/V10.1/bin/db2 list database directory
結果列表沒有名為“DBEMP”的數據庫。
那麼到底發生了什麼?
如果不存在數據庫名稱,為什麼 IBM Data Studio 可以連接到它?
啊….這與個人資料有關。預設情況下,Root 沒有設置為在其配置文件中設置 DB2 庫,因此它無法辨識 DB2 執行檔。這並不是說 root 不能滿足您的要求,您只需要瀏覽 /instance/bin 文件夾即可找到您想要的執行檔。當然,那你還要擔心root是否有連接權限……
但無論如何,您可能會發現更容易 sudo 到您想要用於連接的 id(甚至可能是實例)
sudo - myid
。當然,該實例將在其配置文件中設置 DB2。您可能需要設置您的其他 ID。這是我之前提供的一個答案,我在其中向某人展示瞭如何為其配置文件設置 DB2。我建議您不要通過其配置文件授予 root DB2 訪問權限。