DM8-DIsql的初级使用总结

DIsql的使用总结

前言:

上一次在linux搭建了DM8的数据库,,但是没有进行初始化,进行sql的语句进行测试还有使用disql,本次博客记录一下在linux下进行初始化,并总结一下如何使用disql。
DM8的安装可以参考我之前写的博客:

链接: DM8的安装(win以及linux)
.

准备工作

初始化数据库

首先介绍一下dminit工具,dminit 工具需要从命令行启动。找到 dminit 所在安装目录/bin。
例如,初始化一个数据库,放在/home/test/dmdbms 目录下,数据页 PAGE_SIZE 大小为 16K。

./dminit PATH=/home/test/dmdbms PAGE_SIZE=16

我的数据库是这样设置的:

./dminit PATH=/home/dmdba/data PAGE_SIZE=16 CASE_SENSITIVE=Y EXTENT_SIZE=64 UNICODE_FLAG=1 PAGE_CHECK=0 DB_NAME=DAMENG INSTANCE_NAME=DMSERVER PORT_NUM=5236

以下是他的含义:

在/home/dmdba/data下初始化一个实例,数据库名为DAMENG,实例名为DMSERVER,端口号为5236,页大小为16k,簇大小为64,字符集为UTF8,关闭页检查,开启大小写敏感。

详细的参数可以去官方的文档下载DM8_DIsql使用手册文档,或者可使用“dminit HELP”快速查看各参数。

自此初始化就完成了

启动服务

前台启动:
在bin目录下执行以下命令 :

 ./dmserver /home/dmdba/dmdbms/data/DAMENG/dm.ini

后台启动:
在root权限下
注册服务:

cd  /home/dmdba/dmdbms/script/root/

可以通过./dm_service_installer.sh help 参看相关参数
以下是我的注册服务的配置:

./dm_service_installer.sh -t dmserver -dm_ini /home/dmdba/data/DAMENG/dm.ini -p dm1

成功截图:
在这里插入图片描述
可以通过以下命令来后台执行:

systemctl start  DmServicedm1.service 

后台启动,这里还有一种方式
在bin目录下有一个名字叫service_template的文件夹,内容如下图所示:
在这里插入图片描述
通过配置DmService这个文件并复制到bin目录下面来启动服务。

配置INI_PATH:路径为dm.ini文件的所在位置
如下图所示:
在这里插入图片描述

保存后
通过以下语句复制到bin目录下,方便以后启停

cp DmService ../

然后我们就可以在bin目录,通过以下命令来启停服务:

./DmService start //启动
./DmService stop //停止

DIsql 工具启动

启动方式有如下:
1、不带参数的时候提示输入用户名和密码
在这里插入图片描述
2、带参数启动

在这里插入图片描述
disql的参数还有其他的,可以通过

./disql help

来查看。
在这里插入图片描述
对于一些含有特殊字符的密码,我们在不同的操作系统可以通过对应的输入方式来进行登录,这里就不细说了。以后有机会可以细说。

用户进入 DIsql 界面后,如果想切换到其他 DM 数据库例。有两种实现方式:
一是使用 LOGIN 命令;
二是使用 CONN 命令。登录到远程数据库,必须在服务名处使用 IP 地址或网络服务名

自此,我们就完成了DIsql 工具启动。

使用DIsql 工具

基本的数据库操作基本可以实现:

在这里插入图片描述
建表:

create table student(
       sno   varchar2(3) not null,
       sname varchar2(9) not null,
       ssex  varchar2(3) not null,
       sbirthday date,
       sclass varchar2(5),
       constraint pk_student primary key(sno)
);

在这里插入图片描述
插入数据:

insert into student(sno,sname,ssex,sbirthday,sclass) values(108,'曾华','男',to_date('1977-09-01','yyyy-mm-dd'),95033);
insert into student(sno,sname,ssex,sbirthday,sclass) values(105,'匡明','男',to_date('1975-10-02','yyyy-mm-dd'),95031);
insert into student(sno,sname,ssex,sbirthday,sclass) values(107,'王丽','女',to_date('1976-01-23','yyyy-mm-dd'),95033);
insert into student(sno,sname,ssex,sbirthday,sclass) values(101,'李军','男',to_date('1976-02-20','yyyy-mm-dd'),95033);
insert into student(sno,sname,ssex,sbirthday,sclass) values(109,'王芳','女',to_date('1975-02-10','yyyy-mm-dd'),95031);
insert into student(sno,sname,ssex,sbirthday,sclass) values(103,'陆君','男',to_date('1974-06-03','yyyy-mm-dd'),95031);

在这里插入图片描述
查看数据:
在这里插入图片描述

退出 DIsql

使用 EXIT/QUIT 命令,退出 DIsql

DIsql 环境变量

使用 SET 命令可以对当前 DIsql 的环境变量进行设置。并通过 SHOW 命令来查看当前系统中环境变量的设置情况。
通过help命令,得到以下信息:


SET           设置某个系统环境变量,设置的值会修改当前会话的DISQL系统设置,例如:
                  -   设置数据显示宽度
                  -   制定 HTML 格式
                  -   允许/禁止打印列头
                  -   设置每一页的行数

SHOW          显示某个DISQL的系统变量,或者当前DISQL的环境变量。

通过help set 命令,可以得到set 可以设置的参数
如下:(ps:后面的注解我添加上去的)

   where system_variable and value represent one of the following clauses:
   NEWP[AGE] {1|n|NONE}  //设置页与页之间的分隔
   AUTOCOMMIT {OFF|ON}    //设置自动提交
   PAGES[IZE] {14|n}    //设置一页有多少行数
   DEFINE {&|c|ON|OFF}  //定义本地变量
   ECHO {OFF|ON}  //显示脚本中正在执行的 SQL 语句
   FEED[BACK] {6|n|ON|OFF} //显示当前 SQL 语句查询或改的行数
   HEA[DING] {ON|OFF} //显示列标题
   TIMING {OFF|ON} //显示每个 SQL 语句花费的执行时间
   TIME {OFF|ON} //显示系统的当前时间
   VER[IFY] {ON|OFF} //列出环境变量被替换前、后的控制命令文本
   LONG {800|n} //设置大字段类型显示的最大字节数
   LINESIZE {screen_length|n} //设置屏幕上一行显示宽度
   SERVEROUT[PUT] {ON | OFF} [SIZE {n}] [FOR[MAT] {WRA[PPED] | WOR[D_WRAPPED] | TRU[NCATED]}]//在块中有打印信息时,是否打印,以及打印的格式
   SCREENBUFSIZE {DEFAULT | n(byte)} //设置屏幕缓冲区的长度
   CHAR_CODE {GBK | UTF8 | DEFAULT} //设置 SQL 语句的编码方式
   CURSOR {STATIC | FORWARDONLY | DEFAULT} //设置 DPI 语句句柄中游标的类型
   LINESHOW {ON | OFF}   //显示行号
   AUTOTRACE {OFF | NL | INDEX | ON | TRACE} //设置执行计划和统计信息的跟踪
   DESCRIBE [DEPTH {1|n|ALL}] [LINENUM {ON|OFF}] [INDENT {ON|OFF}]  //设置 DESCRIBE 的显示方式
   TRIMS[POOL] {ON | OFF} //设置 spool 文件中每行的结尾空格
   AUTORECONN  {ON | OFF} //是否自动重新连接.ON 是,OFF 否,缺省为 OFF
   LOBCOMPLETE  {ON | OFF} //设置大字段数据是否从服务器全部取出
   KEEPDATA  {ON | OFF}  //是否为数据对齐进行优化,或者保持数据的原始格式。ON 不优化,OFF 对齐优化。缺省为OFF
   NEST_COMMENT  {ON | OFF} //是否支持多行注释嵌套。ON是,OFF 否。缺省为 OFF
   NULL_ASNULL  {ON | OFF} //在绑定参数输入时,是否将入的 NULL 当作数据库的 null 处理。ON 是,OFF 否。缺省为OFF
   NULL_SHOW  {ON | OFF} 
   CMD_EXEC  {ON | OFF} //是否执行文件中“/”命令。ON是,OFF 否。缺省为 ON
   COLSEP  {| text} //设置列之间的分割符。缺省为一个空格
   CHARDEL  {| text} //设置字符串的限定符。缺省为一个空格
   FLOAT_SHOW  { float_length } //设置 FLOAT、DOUBLE类型按科学计数法显示的分界长度。默认为 0,代表全部按科学计法显示
   SQLCODE  { ON | OFF } 
   SQL_LINESHOW  { ON | OFF } 
   CONSOLE_PRINT  { ON | OFF } 

下面来演示一下 LINESHOW 设置是否显示行号。

在这里插入图片描述
其他的参数也可以通过类似的用法来进行设置。

以上介绍的内容为DIsql的初级使用。还有一些高级的用法,涉及到脚本的使用。将会在以后进行学习。

更多资讯请上达梦技术社区了解: https://eco.dameng.com

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值