有两个多月没更新博客了,因为近两个月生活和工作上都挺忙。一个是搞新房装修,一个是准备几个客户的POC。
在这几个POC中,有个客户使用的是达梦数据库。客户给了些数据,需要我们在系统中演示,而我们的系统之前没有接入过达梦数据库,因此需要安装达梦数据库,然后对一些系统演示必要的数据进行迁移。
本篇文章就来讲下达梦数据库的安装、数据迁移与简单使用。
达梦数据库安装
达梦数据库支持多种系统的安装,此处只介绍常用的Linux、Windows和Docker三种安装方式。
1.Linux下安装达梦数据库
安装前配置
#查看系统版本信息
cat /etc/os-release
#切换到root用户
su root
#创建 dmdba 用户及其所属组 dinstall
groupadd dinstall
useradd -g dinstall -m -d /home/dmdba -s /bin/bash dmdba
#修改用户密码
passwd dmdba
#创建文件夹,用于存放iso安装包
mkdir -p /export/software
#修改文件夹权限,然后将iso安装包放入 /export/software 下
chmod -R 777 /export
#创建 /export/dm7 文件夹,用来安装 DM 数据库
mkdir -p /export/dm7
#设置权限为755
chmod -R 755 /export/dm7
#修改文件夹属主与属组
chown dmdba:dinstall -R /export/dm7/
#挂载镜像
mount -o loop /export/software/dm7_20221228_x86_rh6_64.iso /mnt
#修改文件(/etc/security/limits.conf)的打开最大数
vi /etc/security/limits.conf
#在文件最后添加如下语句,然后保存退出,其中dmdba表示dmdba用户,noproc表示最大进程数,nofile表示最大文件打开数
dmdba hard nofile 65536
dmdba soft nofile 65536
dmdba hard stack 32768
dmdba soft stack 16384
#执行 source /etc/profile 使修改生效
source /etc/profile
#切换到dmdba用户,查看修改是否生效
su - dmdba
ulimit -a
安装数据库
#切换到dmdba用户
su - dmdba
#进入 /mnt 目录
cd /mnt
#执行以下命令安装 DM 数据库
./DMInstall.bin -i
选择安装语言为中文,输入c
下一步,是否输入Key文件路径?输入n
下一步,是否设置时区,输入y,然后选择设置时区输入21
下一步,输入1,选择典型安装
输入安装目录,/export/dm7
等待几分钟,数据库安装完成后。
2.Docker 安装达梦数据库
下载docker镜像: 达梦数据库docker镜像安装包
将安装包放入 /export/software
#执行以下命令导入安装包
cd /export/software
docker load -i dm8_20220822_rev166351_x86_rh6_64_ctm.tar
#查看镜像
docker images
#启动容器
docker run -d -p 5236:5236 --name dm8_01 --privileged=true -e PAGE_SIZE=16 -e INSTANCE_NAME=dm8_01 dm8_single:v8.1.2.128_ent_x86_64_ctm_pack4
#查看启动的容器
docker ps
Docker 镜像中数据库默认用户名/密码为 SYSDBA/SYSDBA001
启动数据库:docker start dm8_01
停止数据库:docker stop dm8_01
重启数据库:docker restart dm8_01
然后可以使用宿主机的IP、端口5236和用户名密码在Dbeaver等数据库管理软件远程登录。
3.Windows下安装达梦数据库
1.点击选择适合自己电脑系统的数据库版本下载,下载后解压。
2.双击 setup.exe 进行安装
3.选择语言和时区后点击确定;然后跳出的安装向导直接下一步;然后许可证协议勾选接受后点击下一步;然后key文件直接点击下一步。
4.选择典型安装并且选择安装目录(默认即可),确认安装前小节信息没问题后点击安装。
5.等待几分钟后完成安装。
6.选择初始化数据库,开始数据库实例的配置
7.首次安装,选择创建数据库实例。
8.这一步默认,点击下一步
9.指定数据库目录。
10.填写数据库名、实例名、端口号。
11.指定控制文件路径,默认即可。
12.按需配置其他一些参数。
13.为系统用户设置密码,默认密码和用户名一致。
14.此处建议勾选创建示例库 BOOKSHOP
或 DMHR
,作为测试环境。
15.查看数据库摘要(以上步骤的一些配置),确认没问题点击完成,开始创建达梦数据库。
16.创建完成后点击完成。
17.启动数据库:到数据库安装路径的 tool 目录下,双击运行 dmservice.exe 程序。
18.在打开的DM服务查看器中,可以选择启动或停止服务,也可以在windows的服务里面启停。
19.依次点击:开始菜单-达梦数据库-DM管理工具,打开DM管理工具,点击新建连接,输入IP(本地安装的可以写LOCALHOST)、端口、用户名和密码后连接达梦数据库。
4.使用Dbeaver远程连接代码数据库
1.打开dbeaver,点击 数据库-驱动管理器-新建 ,在设置选项卡里填写 驱动名称、类名和URL模板 ,其中模板里面的IP和端口按实际的填写。
使用驱动管理器方式是因为dbeaver里面可能没有默认内置的达梦数据库供连接
2.切换到 库 选项卡,点击 添加文件 ,添加驱动文件,然后点击 找到类 并选择驱动类。
驱动文件:
https://115.com/s/sw6pvt73z2p?password=q1f1&#
DmJdbcDriver18.jar
访问码:q1f1
3.点击 数据库-新建数据库连接 ,找到上一步设置的驱动名称 Dm_Database ,然后点击下一步。
4.填写 用户名、密码 后测试连接,显示连接成功即可。
5.如果报连接超时错误,可能是防火墙导致的,对于Windows系统,可以设置开放5236这个端口,具体操作如下:
5.1 在控制面板中找到防火墙,然后点击高级设置
5.2 依次点击 入站规则-新建规则-端口 ,然后点击下一步
5.3 填入达梦数据库端口号,然后点击下一步
5.4 选择允许连接,然后下一步
5.5 应用规则如下
5.6 为入站端口起个名称,完成端口配置。
再次测试连接,显示连接成功!
达梦数据迁移
数据库安装完了,但还没有数据可用,需要在数据库间进行数据迁移,此处以mysql数据迁移到达梦数据库为例,介绍一下达梦数据迁移工具的使用。
1.打开 达梦数据迁移工具 ,在左边空白处右键 新建工程 ,命名为Data_Trans。
2.在迁移上右键,选择 新建迁移 ,命名为Mysql_2_Dm,在跳出的迁移向导上点击下一步。
3.迁移方式里选择Mysql-DM,然后点击下一步。
达梦数据迁移工具支持多种迁移需求,比如达梦数据库间的迁移、其他数据库到达梦数据库的迁移以及达梦数据库到其他数据库的迁移。
4.配置数据源,先输入Mysql的连接信息: 主机名、端口、用户名、密码 ,然后点击 刷新 ,如果成功连接,则可以在数据库名下拉框里选择要迁移的数据库;如果报错,则需要手动添加mysql的驱动,此时点击指定驱动。
5.添加驱动mysql-connector-java-5.1.26.jar,然后点击确定,现在可以在数据库名下拉框里选择要迁移的数据库了,然后点击下一步,接着输入达梦数据连接信息,点击下一步。
mysql驱动包:
https://115.com/s/sw6pvjl3z2p?password=y309&#
mysql-connector-java-5.1.26.jar
访问码:y309
6.配置迁移策略,默认即可。
7.指定目标模式,即指定要把mysql的数据导入到达梦的哪个模式下,这里以我在达梦数据库建的DM_TEST01模式为例,然后点击下一步,没问题的话会从mysql源获取待迁移的对象。
8.选择迁移对象,勾选要迁移的表或其他对象,也可以在上面搜索框里搜索。然后查看下对应的目的模式和目的对象是否准确,没问题的话接着点击右下方的转换按钮
9.在转换里面可以配置迁移策略,比如是否要迁移表的主键、索引、约束等,以及可以选择先迁移表结构后迁移数据或者同时迁移,配置完迁移策略后勾选下面的应用当前选项到其他同类对象。
注:
在数据迁移涉及约束时,可能会有一些报错,比如主外键约束错误等,如果外键约束不是必要的,可以不迁移该约束。
除了oracle外,其他数据库可能存在一些对象不能顺利迁移到达梦的情况,比如mysql的存储过程,因为语法与达梦相差较大,即使强行迁移过去,也是问题很多无法正常执行的。
10.配置完迁移对象和策略后,点击下一步,审阅迁移信息,没问题点击完成,开始迁移,等到任务列表里都显示成功,表示迁移完成。
达梦的使用
达梦的语法与oracle非常像,一般oracle的代码都可以在代码运行。