我在学习django中admin模块的时候,登陆进入后台操做页面,输入中文数据,但保存以后全是乱码(全是“????????????”),而后就开始了解决问题之路。mysql
一、首先百度搜索,最主流的方法也是一劳永逸的方法是:修改MySQL的配置文件my.ini。我也是按照这个方法作的,只是搜索出来的方法不详细,或者说不适合MySQL的新版本。sql
二、在MySQL根目录下寻找my.ini配置文件,然而我装的是MySQL-5.6.30,在根目录下只找到了my-default.ini文件。把my-default.ini重命名为my.ini,并按照以下格式在文件中的[mysql]和[client]中添加以下语句:数据库
[mysqld] character_set_server = utf8 character_set_client = utf8 [client] default-character-set = utf8
三、以后在path环境变量中添加MySQL的根路径和根路径下的bin路径。(若是以前已设置,而且MySQL的路径没有改变,这一步能够忽略)django
四、以管理员权限运行cmd命令行,执行以下步骤,安装或者从新安装mysql(注意红色mysqld和黑色mysql的区别):学习
4.一、若是以前安装了MySQL,须要卸载MySQL,在命令行中执行:mysqld --remove编码
4.二、执行:mysqld --install命令行
4.三、执行:net start mysqlserver
4.四、登陆mysql:mysql -u root -p rem
4.五、在mysql的命令行操做中,输入:show variables like 'charac%';cmd
显示以下图所示的结果,mysql数据库中就能够正常存储中文数据了。
注意:一、在第2步中,不能把下面这个设置选项
default-character-set = utf8
放在
[mysqld]
模块中。若是是这样,在安装或者从新安装mysql的过程当中,能够正确执行4.1和4.2,但执行4.3的时候会报以下图的错误:
二、个人mysql数据库在修改编码配置以前显示的默认配置结果为(固然不一样的版本默认配置可能不同):