今天一天被mysql搞炸了,感觉就像找bug,这个修好了那个又出毛病了。
像往常一样正常朝Navicat导入数据库文件,结果在Navicat里面直接运行sql文件不能正常导入,之后用命令行导入(use 数据库名、source 文件的地址),发现虽然导入成功了,但是乱码,于是查看Navicat数据库属性为utf-8格式的,要导入的文件也是正常的utf-8格式,但是不知道为啥还是乱码,于是修改 mysql文件中my.ini文件,添加了default-character-set=utf8。并且在data目录下的db.opt文件添加了default-character-set=utf8、default-collation=utf8。发现还是不行,通过show variables like 'character%'; 显示的数据库的格式还不是utf-8,在命令行改数据库的字符还是乱码(set names utf8)。于是又删掉数据库通过命令行新建数据库并且设置字符格式(create database 数据库名 CHARACTER SET utf8;),最后成功导入数据后发现第一页的数据正常,第二页的数据还是乱码,并且发现导入的整个数据库中,和原来数据库相比少了8个表,又重新2次导入数据库后发现情况还是一样,但表少6个。多次尝试无果后,选择了卸载重装mysql
我选择安装的是5.7的版本,在安装mysql之前需要将原先数据库的配置全部删除,我查看网上的删除步骤特别繁琐,需要一个一个的去查,一旦有漏就会失败,在这里给大家推荐一个卸载原来数据文件的软件, geek卸载 https://geekbench.en.softonic.com/
这个只需10秒就可以将有关mysql的7、8个相关文件卸载,之后就可以按照网上的教程正常的安装并且配置环境了。
不过重装好之后,导入.zip压缩的文件后发现表没有遗漏,但是数据有的没有导进去并且还是乱码,然后又用了另一份压缩文件.7z,发现它可以正常导入并且没有任何错误,之后又尝试用7z解压.zip的压缩包,或者直接导入解压的.zip的文件,发现还是同样的错误,在网上查询这两个压缩文件的区别,也是压缩速度的问题,但7z是开源文件,也不清楚是不是因为这个才没有出错,因此以后我也不用别的压缩文件了,还是7z好一些