mysql 数据库迁移到达梦数据库

1.windows安装达梦数据库,去官网下载 dm8 进行安装,安装后,可以使用管理工具管理数据

使用迁移工具对数据进行迁移;

2.使用php 或者 thinkphp连接达梦数据库

2.1、先PHP开启DM扩展

从达梦数据库安装目录下drivers/php_pdo 复制对应的文件到 php 安装目录下的 ext目录下

pdo73nts_dm.dll

php73nts_dm.dll

复制代码
extension=pdo74nts_dm.dll
extension=php74nts_dm.dll

2.2 、到数据库服务器的%DM_HOME%\drivers\dpi,找到以下dll文件

dmdpi.dll

dmclientlex.dll

dmutl.dll

dmstrt.dll

dmshm.dll

dmos.dll

dmmsg.dll

dmmout.dll

dmmem.dll

dmelog.dll

dmdta.dll

dmdcr.dll

dmcyt.dll

dmcvt.dll

dmcpr.dll

dmcomm.dll

dmcfg.dll

dmcalc.dll

放到php根目录,当前目录下

重启服务器,如果遇到服务器启动不了,可能是缺少了一些dll文件,可以多复制一些进去然后再启动;

然后使用 php -m 或的 phpinfo() 查看模块是否启动,如果看到DM 和 PDO_DM 则表示启动完成;

然后就可以使用程序连接数据库了

复制代码
<?php
try
{
    $link = dm_connect("localhost:5236", "SYSDBA", "cdbottle123")
        or die("Could not connect : " . dm_error()."\n");  

    //使用 dm_error 会显示 dm 的 php 接口返回的错误,执行成功,则继续往下执行。
    print "php: Connected successfully"."\n"; 

    /*断开连接*/ 	
    dm_close($link); 
}
catch(Exception $e)
{
    $e->getMessage() . "<br/>";
}
?>

如果看到 ,

表示连接成功,如果遇到 dpi_login: -70089 加密模块加载失败,则可能是文件没有放到 system32文件夹下,然后把数据库安装目录下 bin下面的*. dll文件放到system32下(如果不行就全部放)

如果放了,一般就成功了;

然后就可以使用 迁移工具对数据进行迁移,达梦一个模式下就代表一个数据库(用户),可以先创建数据库,在做迁移工作;

注意:如果使用 pdo(thinkphp5.1 获取数据时,默认使用pdo),如果发现中午乱码,是因为

PDO方式下,即使设置了数据库为UTF-8编码,使用php的pdo方式查询出的数据依然是GBK编码。

解决办法:

打开C:\windows\System32\dm_svc.conf文件,(dm_svc.conf为刚才放入的文件)新增一行:

复制代码
CHAR_CODE=(PG_UTF8)

即可

迁移数据前,一般是先在达梦创建好用户后在迁移

复制代码
create tablespace CQSE_RECOM datafile 'CQSE_RECOM.DBF' size 128 CACHE = NORMAL;
create user CQSE_RECOM identified by "cdbottle123" default tablespace CQSE_RECOM default index tablespace CQSE_RECOM;
grant public,resource,vti,soi to CQSE_RECOM;

兼容 mysql 需要在数据库中执行下,然后重启数据库 命令:

复制代码
sp_set_para_value(2,'COMPATIBLE_MODE',4);

thinkphp5.1 对接达梦数据库:tp5(ThinkPHP 5.1)连接达梦数据库_thinkphp 达梦-CSDN博客

laravel 对接达梦数据库:dm适配Laravel | 达梦技术社区

相关推荐
shirsl1 分钟前
数据开发实时项目问题整理
数据库·sql·big data
bbq粉刷匠23 分钟前
数据库设计实践
数据库
java_logo23 分钟前
Docker 部署 ClickHouse Server:轻松搭建列式 OLAP 分析数据库平台
数据库·clickhouse·docker·私有化部署·olap·列式数据库·轩辕镜像
盛世宏博智慧档案34 分钟前
高速 ETC 门架外场机房温湿度远程监测解决方案
服务器·数据库·php·高度·高速·温湿度
—Miss. Z—36 分钟前
计算机三级数据库技术—应用题2️⃣
数据库·mysql
PrudentWoo39 分钟前
PostgreSQL 12 登录失败:role “postgres“ is not permitted to log in 的排查与修复
数据库·postgresql
这个DBA有点耶1 小时前
临时表从4.7秒到0.12秒:不是所有Using temporary都需要优化
数据库·mysql·代码规范
天衍四九-1 小时前
排查慢SQL用explain分析执行计划,主要关注哪些字段?
数据库·sql
Meta391 小时前
PostgreSQL报SELECT rule‘s target entry X has different type from column “XXX“
数据库·postgresql·dubbo
洋不写bug2 小时前
二叉树(四)经典算法题目解析,公共祖先,二叉树构造,非递归遍历
数据库·算法·二叉树·二叉树构造·公共祖先