disql是达梦数据库自带的一个命令行客户端工具,用来与达梦数据库服务器进行交互,类似oracle的sqlplus命令。
disql具体用法如下:
DISQL 用法1:disql -h|help 显示disql版本信息和帮助信息
DISQL 用法2:disql [ [<option>] [{<logon> | /NOLOG}] [<start>] ]
<option> 为: [-L] [-S]
-L 只尝试登录一次
-S 隐藏模式,隐藏<SQL>标识符
<logon> 为: {<username>[/<password>][*<MPP_TYPE>][@<connect_identifier>] | /} [AS <SYSDBA|SYSSSO|SYSAUDITOR|AUTO>]
<connect_identifier>为{[<SERVER>][:<PORT>][?{UDP|TCP|IPC|RDMA}][#<sslpath>][@<sslpwd>]}
v6ַҪָIPv6,[fe80::1e6f:65ff:fed1:3724%6]
<start> : `<filename>[<parameter> ...]<direct sql> 运行disql脚本
/NOLOG 选项能在未登录DM服务器的情况下启动disql
<direct sql>:-e "<SQL语句>[;<SQL语句>]"
- 达梦服务器端使用disql直接连接
如果采用dminit新建实例的过程中没有使用SYSDBA_PWD来设置SYSDBA密码,那么默认密码则为SYSDBA,同样如果没有使用PORT_NUM来指定达梦数据库的监听端口,那么默认监听端口为5236,针对这种情况,只需要采用以下任意一种方式即可连接达梦数据库:
第一种方式:参数带密码,命令默认连接5236端口
[dmdba@dmlab ~]$ disql SYSDBA/SYSDBA
服务器[LOCALHOST:5236]:处于普通打开状态
登录使用时间: 8.782(毫秒)
disql V7.6.0.142-Build(2019.03.12-103811)ENT
SQL> quit
第二种方式:参数不带密码,命令使用默认密码连接
[dmdba@dmlab ~]$ disql SYSDBA@localhost
服务器[localhost:5236]:处于普通打开状态
登录使用时间: 8.257(毫秒)
disql V7.6.0.142-Build(2019.03.12-103811)ENT
SQL>
- 使用IP地址+端口号连接远程服务器
如果需要连接远程的达梦数据库实例,则加上正确的IP地址和监听端口即可,如下:
[dmdba@dmlab ~]$ disql SYSDBA/SYSDBA@192.168.199.123:5238
服务器[192.168.199.123:5238]:处于普通打开状态
登录使用时间: 18.035(毫秒)
disql V7.6.0.142-Build(2019.03.12-103811)ENT
SQL>
- 使用服务名的方式进行连接
使用服务名来连接达梦数据库实例需要修改/etc/dm_svc.conf 文件
语法如下:
服务名=(IP地址:监听端口号)
例如我本地有多个不同的实例名,配置如下:
$ cat /etc/dm_svc.conf
TIME_ZONE=(480)
LANGUAGE=(cn)
DCA=(localhost:5236)
DCP=(localhost:5237)
DCM=(localhost:5238)
连接测试:
[dmdba@dmlab ~]$ disql SYSDBA/SYSDBA@DCA
服务器[localhost:5236]:处于普通打开状态
登录使用时间: 8.384(毫秒)
disql V7.6.0.142-Build(2019.03.12-103811)ENT
SQL>