暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

国产数据库:达梦7 单实例管理-DIsql客户端工具

原创 李美静 2020-04-23
2650

本文主要介绍达梦数据库的客户端工具DIsql。
根据下图内容来进行:
达梦7 单实例管理DIsql.png

DIsql工具简介

在安装完达梦数据库之后,可以借助工具访问,那么在达梦数据库中可以使用命令行工具,DIsql客户端工具来访问。当然也有图形工具,本文主要以DIsql为主。
DIsql工具和Oracle的sqlplus工具相似。

命令行语法

摘自达梦的官方手册《DM7_DIsql 使用手册》

DIsql [ [<option>] [<logon> | /NOLOG] [<start>] ]
<option>::=HELP|-H|-S
<logon>::=<username>[/<password>][*<MPP_TYPE>][@<server>][:<port>][?{UDP|TCP}
][#<sslpath>@ssl_pwd]
<start>::=<`运行脚本>|<start 运行脚本>|<直接执行语句>
<`运行脚本>::=`<file_path> [<PARAMETER_VALUE>{ <PARAMETER_VALUE>}]
<start 运行脚本>::=START <file_path> [<PARAMETER_VALUE>{ <PARAMETER_VALUE>}]
<直接执行语句>::= -E “<SQL 语句>{;<SQL 语句>}”

应用

  • disql -h 查看帮助信息
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 username/password@ip:port

这种方式是最常用的连接方式,指定用户名密码,并且通过哪台机器登陆,即可以是ip也可以是主机名,以及数据库服务的端口号。
注:主机名需要提前做解析

示例 1:

通过本地服务器登陆默认的5236端口,可以通过以下任意一种方式都可以登陆:

disql sysdba/SYSDBA@localhost:5236
  
disql sysdba/SYSDBA

disql sysdba/SYSDBA@localhost

disql sysdba/SYSDBA@192.168.6.201:5236

示例 2:

配置客户端别名登陆,编辑/etc/dm_svc.conf文件:

[dmdba@enmoedu ~]$ cat /etc/dm_svc.conf 

enmoedu=(192.168.6.201:5236)
TIME_ZONE=(480)
LANGUAGE=(cn)

[dmdba@enmoedu ~]$ disql sysdba/SYSDBA@enmoedu

示例 3:

连接时执行命令:

disql sysdba/SYSDBA -e 'select status$ from v$instance'

口令的格式

如果用户的口令中含有单引号时,需要用双引号引起来。
如果用户的口令中含有双引号时,需要对双引号进行转义。

示例:

口令为:enmo’edu1

中间有单引号,需要用双引号引起来

alter user test identified by "enmo'edu1";
操作已执行

conn test/"enmo'edu1"

口令为:enmo"edu1

需要用双引号来对中间的双引号转义:

alter user test identified by "enmo""edu1";
操作已执行

conn test/"enmo""edu1"

口令为:enmo/eduate

需要用双引号引起来

alter user test identified by "enmo/eduate"; 

conn test/"enmo/eduate"

口令为:enmo\eduate

alter user test identified by "enmo\edu1";
操作已执行

conn test/"enmo\edu1"

口令为:enmo’$edu1

alter user test identified by "enmo'$edu1";
操作已执行

conn test/"enmo'$edu1"

口令为:enmo’/eduate

alter user test identified by "enmo'/eduate";
操作已执行

conn test/"enmo'/eduate"
最后修改时间:2020-04-23 15:05:22
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

文章被以下合辑收录

评论