1.5.2 disql
disql是達夢數據庫自帶的一個命令行客戶端工具,類似于Oracle數據庫的SQLPLUS工具。通過disql可以和達夢數據庫實例進行交互式操作。
1.連接數據庫實例
disql文件存放在達夢數據庫安裝路徑下的bin文件夾。如圖1-50所示,在數據庫服務器的命令行模式下直接運行,按照提示輸入用戶名、密碼等信息,即可連接到本地數據庫實例。

圖1-50
如果本地服務器安裝了多個數據庫實例,或者需要連接遠程的數據庫,在disql命令后面需附加上要連接的數據庫實例的用戶名、密碼和數據庫實例的IP地址+端口號。達夢數據庫通過不同的端口號區分不同的數據庫實例,默認端口為5236。例如:
C:\Users\fuqiang>disql sysdba/SYSDBA@172.24.98.147:5236
2.執行語句
disql下除了可以直接執行SQL語句,還可以執行事先寫好的SQL腳本文件。例如,先在D盤編輯好文本文件sql_script.sql,輸入兩行SQL語句,每條語句以分號結束:
在disql中使用start命令(注意,start命令行末尾不要加分號),如圖1-51所示。
也可以使用“·”鍵(鍵盤Esc下方的按鍵)代替start,如圖1-52所示。

圖1-51

圖1-52
3.使用操作系統認證登錄
在Oracle數據庫服務器上,可以通過修改配置文件sqlnet.net中的用戶認證方式,實現管理員免密碼登錄。達夢數據庫不僅可以實現管理員在服務器端免密碼登錄,也可以讓普通用戶在服務器端免密碼登錄。
達夢數據庫的操作系統認證很簡單,主要分以下兩個步驟。
步驟01 將允許本機操作系統認證的ENABLE_LOCAL_OSAUTH參數設置為1(默認為0):
SQL> SP_SET_PARA_VALUE(2,'ENABLE_LOCAL_OSAUTH',1);
該參數是靜態參數,修改后需要重啟數據庫實例才能生效。
使用DM 8之前的版本可以直接修改參數文件dm.ini,添加ENABLE_LOCAL_OSAUTH=1即可。但這樣的方式存在安全隱患。DM 8版本開始將此參數改為了隱含參數,存放在內部數據字典表中,不再保存在參數文件中,但通過視圖V$DM_INI仍然可以查到這個參數。
步驟02 在服務操作系統上創建dmdba和dmusers兩個用戶組,dmdba用戶組中的用戶可以不用密碼,以管理員(sysdba)身份登錄數據庫;dmusers用戶組中的用戶需要事先在數據庫中創建同名的賬號,即可實現免密碼登錄。
Windows操作系統中的步驟如下。
步驟01 創建dmdba、dmusers兩個用戶組。
步驟02 將操作系統賬號加入這兩個用戶組,如圖1-53所示。
步驟03 在數據庫中創建賬號fuqiang:
SQL> create user fuqiang identi fi ed by password;

圖1-53
步驟04 登錄測試:
以sysdba身份登錄,如圖1-54所示。

圖1-54
以普通用戶身份登錄,如圖1-55所示。

圖1-55
Linux操作系統中的步驟如下。
步驟01 創建dmdba、dmusers組。
[root@dbserver ~]#groupadd dmdba [root@dbserver ~]#groupadd dmusers
步驟02 將達夢數據庫賬號dmdba添加到dmdba、dmusers兩個組中。
[root@dbserver ~]#usermod -a -G dmdba,dmusers dmdba
步驟03 在數據庫中創建賬號dmdba。
SQL>create user dmdba identi fi ed by password;
步驟04 登錄測試過程如圖1-56所示。

圖1-56