SELECT FEATURE FROM DAMENG_DATABASES

I CAN’T BELIEVE MY EYES!博主居然写国产 developer tools/operation system?

咳咳。。。。

你没看错,虽然我对国产 ide 系工具根本不 care,总是表现出一种「不屑一顾」的态度,但俗话说的话,没有了解就没有发言权;然后就折腾了一周多,这不写个小作文,心有不甘~

我也没啥技术和使用需求,所以只能勉强写个使用体验,给各位就权当一乐~

另外明人不说暗话,我想要那 5 分,咳咳,懂得都懂- -

初步安装&使用

培训时和达梦配套的 base system。。。emmm,也是国产的老朋友 kylin。

我对数据库并不是很熟悉,但 linux 用的不少,所以略微吐槽一下:kylin 并非主流常用的操作系统,所以安装的时候还要踩不少暗坑;和主流的 ubuntu debian rehl 不同,这玩意是分 server editon 和 desktop edition 的,两种系统的桌面环境截然不同,后者显著的比前者简单易用美观,且前者不能自动识别网卡,vmware tools 不能提供粘贴功能,只能通过虚拟机共享文件夹或者 ssh 转 sftp 的方法将文件考入。但培训推荐用的是前者,emmm。。。虽说不是不可以接受吧,因为如果未来公司要用,也是用前这,但培训的时候都是一个人用,用后者体验会更好,操作逻辑应该都是一样的。 但非服务器版的权限限制反而更严格,安装更麻烦。

安装按步骤来倒是异常简单,安装时界面都一步一步都把命令写出来了,相对于其他几个数据库在 linux 下通过二进制文件安装,完整配置(service 和初始化)都要自己一步步看文档去配,安装和初始化过程中 systemctl 都用窗口弹出的方法告诉用户怎么配置了;另外安装后工具也给的很全,几个 gui 工具都装上了。当然,kylin 是个 rpm 系系统,更傻瓜的方法是,给个 rpm 包~另外环境变量的配置也还没有通过提示给出,我觉得环境变量也可以通过几个固定的命令去配置的,可以顺路一带写出来。

DESIGN BY ORACLE?I FEEL IT LIKE SSMS

虽说达梦的框架上和 oracle 大差不差,但进入 manager 后,毫无疑问是和隔壁微软家的 ssms 更像,比如 pl/sql 标志性的竖向窗口列表并不存在,而且类似于 navicat/ssms 的横向标签页;预估作业计划在运行右侧;右键表选择查看数据可以直接进行修改而无需走事务操作流程。

只有当我一本正经的在 select 语句中敲入 rowid,我才意识到这玩意有 oracle 的影子。

不过底下的保存修改/取消修改和顶上的提交回滚居然用一样的图标,这个给差评,容易让人感到迷惑,看看 pl/sql 是怎么做的:

保存修改:

回滚:

辨识度极高。

feature or bug?

文档很全,但缺乏检索功能

我确实没见过安装完后会在 doc 目录下放入如此多,如此详细文档的软件:

这点确实该给大大的好评,但是,很快我就发现不对劲的地方:

对于新手来说,我想改服务器配置,我应该搜哪个文档呢?

茫茫多的 pdf,虽然有初步的命名,但仍然缺少区分度。

pdf 相较于普通的 txt,可以带图,且 kylin 默认带上了 pdf 阅读软件,是个好主意,但 txt 可以调用 linux 自带的 find 对内容进行检索,pdf 就不行。

建议做一个合在一起的,或者,要不要在做一个 markdown 版的文档?

disql 运行错误?

刚吐槽过安装时没有设置环境变量——但官方文档里其实有环境变量的配置的:

DM8_HOME=/dm8

PATH=$PATH:$DM8_HOME/bin;$DM8_HOME/tool

然后直接跑 disql [账号]\[密码],就会报错:

1
创建SOCKET连接失败

原因嘛,也不复杂:

1
2
3
4
5
6
[dmdba@localhost ~]$ whereis disql
disql: /dm8/bin/disql /dm8/tool/disql
[dmdba@localhost ~]$ ls -al /dm8/bin/disql
-rwxr-xr-x 1 dmdba dinstall 6879 7月 13 14:06 /dm8/bin/disql
[dmdba@localhost ~]$ ls -al /dm8/tool/disql
-rwxr-xr-x 1 dmdba dinstall 121 7月 13 14:06 /dm8/tool/disql

看到了么?bin 里面也有一份 disql,但我们要开的是 tool 里面的 disql

所以:

1
/dm8/bin/disql [账号]\[密码]

就不会有问题了。

bin 这里的 disql 我觉得应该从 tool 里面做链接过去。

gui 服务起停问题

服务起停,按理来说,可以用命令行:

1
2
DmServiceDMSERVER stop
DmServiceDMSERVER start

也可以用 gui 界面:

1
dmservice.sh

但,一旦用命令起停以后,再用 gui,就会发现 DmServiceDMSERVERD 处于关闭状态,再也无法打开。

manager gui 默认不开自动补全和部分功能打开显示系统出错

恕我直言。。。我还没见过那个数据库 gui 不开自动补全的,尤其是因为达梦顶部缺少 gui 级别 use 功能的情况下,每次敲 select 都要带上库名,这还不开自动补全?

窗口->选项->查询分析器->编辑器->启用 sql 输入助手。

默认情况下,点到某些功能,如索引,约束的时候,会报错:系统错误。解决方法是上面管理工具中的导航树节点分批加载关掉:

I wish you for the world

试用了一圈回来,在我的预期之内,可用程度不低,但感觉还是差点什么。

差点什么呢?

我不 care 国产 developer tools/operation system 的原因,恰恰就在于他们总是强调自己是「国产」,是为了「破除技术封锁」而生的。

不管是达梦之于 oracle

kylin 之于 redhat

还是鸿蒙之于 android

他们有自己相对于原版独到的东西么?有

但从技术上还没到能够说服使用者换用他们家东西的水平。

要想打破封锁,最重要的不是「窝里斗」,而是走出去,做出独到的东西,让别人「不用你不行」

安装达梦的时候,我特意留意了一下能不能安装成英文版。很遗憾,不知道是安装包的原因,还是根本没有做英文版界面,反正就是没有。

doc 目录中这么详细的文档,也是国人特供。

其实现在数据库也有很多新的发展方向,比如 docker 部署,docker 是很方便,但数据库 docker 版本热更新现在还是个比较麻烦的问题。

希望国产的软件们再努努力吧。

That’s all。