欢迎转载,请支持原创,保留原文链接:blog.ilibrary.me

这段时间整理了网上的几个数据, 数据量在20亿/130G左右, 主要是做数据迁移,统一到mysql里面去,方便后面使用. 存粹业余爱好,瞎折腾。中间遇到一些问题,也有一些数据,记录下来,以后做参考。我的彩虹屁网站数据量也不小(没有任何访问量), 以后应该也是需要整理数据的,希望能有帮助。

源数据为sqlserver, 目标数据库为mysql 8。

  1. 导入导出。 用mysql workbench 做导入导出,图形化界面,非常方便. 数据源选sql server, ODBC(Native), 数据库选”.”, sa, password.
  2. 导入的时候会遇到incorrect string的问题,网上都会解释是emoji这种扩展字符的问题,要把mysql设置为character set utf8 collate utf8mb4. 折腾来很多,没有解决问题。后来只能把所有没法导入的字符修改掉。如果有问题的记录非常多的话,改起来就是个大问题。
  3. sql server 2005可以在没有log文件的情况下attach db, 2008r2不行。
  4. 2008r2 attach db的时候会遇到access denied的问题。解决办法是在文件夹属性->安全->编辑, 给用户加上访问权限
  5. mysql export数据库为sql文件时,数据大小与源数据库大小差不多,略小。 这样说可能不准确,因为数据库本身数据结构的原因,会有一些空间浪费,还有索引等也占用空间,大部分情况下数据库应该比导出数据文件大。
  6. 导出的.sql文件用7z压缩,可以压缩为原大小的四分之一左右,这可以节省很多空间。