你的位置:首页 > 数据库

[数据库]MYSQL数据库导入数据时出现乱码的解决办法


我的一个网站在负载搞不定的情况下最终选择了数据库和程序分离的方式解决的高负载,但是再导入数据的时候出现了大量乱码,最终通过方法二解决掉导入数据的问题,后面再设计网站布局的时候数据库跟网站程序分离是个很好的case

首先在新建数据库时一定要注意生成原数据库相同的编码形式,如果已经生成可以用phpmyadmin等工具再整理一次,防止数据库编码和表的编码不统一造成乱码。

方法一: 通过增加参数 –default-character-set = utf8 解决乱码问题

mysql -u root -p password < path_to_import_file –default-character-set = utf8 

 

方法二: 在命令行导入乱码解决

1. use database_name; 2. set names utf8; (或其他需要的编码) 3. source example.sql (sql文件存放路径)

 

方法三: 直接粘贴sql文件里的代码

1. 打开SQLyog客户端软件; 2. 定位到SQL编辑器,然后用记事本打开刚刚导出的SQL文件; 3. 复制文件中所有SQL语句到SQL编辑器当中,执行这些SQL代码;

 

方法四: 用记事本或其他文本工具改变SQL文件的编码格式(若方法三不行,那就尝试方法四)

1. 用记事本(或UE)打开刚才的导出的SQL文件; 2. 另存此文件——打开另存为对话框,选择对话框中的编码格式为UNICODE编码; 3. 保存文件,然后CTRL+A,全选; 4. 复制里面的SQL语句到SQLyog中的“SQL编码器”当中,再执行一次SQL语句; 5. 执行完成后切记刷新一次,查看中文的数据表,乱码消除,大功告成;