当我们想把mysql格式的SQL文件导入到MogDB数据库时,我们可以借助navicat工具,先将SQL文件导入到mysql数据库中,再使用数据传输功能把SQL中的对象和数据直接导入到MogDB。或者使用数据传输功能将这些对象的定义和数据导出成PG格式的SQL语句,再导入到MogDB数据库中。
CREATE TABLE `mysql` (
`ID` int(11) NOT NULL COMMENT '用户ID',
`Name` varchar(50) NOT NULL COMMENT '姓名',
`Notes` varchar(200) DEFAULT NULL COMMENT '注释',
PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='测试表';
/*
Navicat Premium Data Transfer
Source Server : mysql
Source Server Type : MySQL
Source Server Version : 80019
Source Host : localhost:3306
Source Schema : test
Target Server Type : PostgreSQL
Target Server Version : 130000
File Encoding : 65001
Date: 13/08/2021 17:25:59
*/-- ------------------------------ Table structure for mysql
-- ----------------------------
DROP TABLE IF EXISTS "test"."mysql";
CREATE TABLE "test"."mysql" (
"ID" int4 NOT NULL,
"Name" varchar(50) NOT NULL,
"Notes" varchar(200)
)
;
COMMENT ON COLUMN "test"."mysql"."ID" IS '用户ID';
COMMENT ON COLUMN "test"."mysql"."Name" IS '姓名';
COMMENT ON COLUMN "test"."mysql"."Notes" IS '注释';
COMMENT ON TABLE "test"."mysql" IS '测试表';
-- ----------------------------
-- Records of mysql
-- ----------------------------
BEGIN;
COMMIT;
-- ----------------------------
-- Primary Key structure for table mysql
-- ----------------------------
ALTER TABLE "test"."mysql" ADD PRIMARY KEY ("ID");
此时要注意,MogDB中mysql数据库下要存在与导出数据库同名的schema(也就是test),并且导入用户要是test模式的拥有者。
墨天轮原文链接:https://www.modb.pro/db/99672?sjhy(复制到浏览器或者点击“阅读原文”立即查看)
关于作者
崔欣,云和恩墨技术顾问,Oracle 11g OCM。中国DBA联盟成员,拥有OCM、PGCE、OGCA 、OBCA等证书,经常在墨天轮上分享自己的学习心得和技术经验。长期服务于运营商、银行、保险等行业。主要从事Oracle数据库运维以及MogDB、openGauss、PG等开源数据库相关维护和培训工作 ;热衷于数据库运维工作,乐于分享数据库相关技术。
END