mysql数据库存储中文数据的解决办法

我在学习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数据库在修改编码配置以前显示的默认配置结果为(固然不一样的版本默认配置可能不同):

    

相关文章
相关标签/搜索