检查名字是否重复
检查名字是否重复是很常用的业务需求,本文推荐一种更省心、更少bug的做法。
大约 1 分钟
检查名字是否重复是很常用的业务需求,本文推荐一种更省心、更少bug的做法。
经过调试与验证,我们可以确信自己编写的SQL是正确的,是时候到目标库执行SQL了!
但要小心,在正式环境中执行 SQL,也许会有意想不到的坑!
先说明下我们的环境信息。
我们只能通过跳板机的终端连接 mysql、执行SQL,没有DBeaver、Navicat等工具可用。
前面有讲数据迁移的案例(mysql-a -> mysql-b),其实在迁移前还少不了备份。
并且,因为不想停机迁移,因此还要新起一个数据库实例,记为 mysql-b',复制 mysql-b 的相关数据。这样就能在 mysql-b' 里验证迁移SQL的正确性,以确保 mysql-b 能不宕机完成数据迁移。
在这种情况下,就需要用到我们今天的主角,数据备份工具 mysqldump。
项目要做数据迁移,要把 mysql-a 的数据,迁移至 mysql-b,同时 mysql-b 的数据不能丢失。
问题分析:
迁移思路:
注意:
Look at the DDL below, can you tell the meaning of CHARSET=utf8mb4
and COLLATE=utf8mb4_general_ci
?
CREATE TABLE `my_table` (
`id` bigint NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
That is the knowledge that today I want to share with you.