linux下mysql中文乱码(中文问号)解决办法
2015-11-25 18:12
671 查看
http://www.111cn.net/sys/linux/53209.htm
今天发现我mysql插入中文时老出现????号了,但保存英文是没有问题的,下面我来给各位同学介绍一下linux下mysql中文乱码解决方法。linux下则需要修改/etc/my.cnf,在[mysqld]下加入default-character-set = utf8,[client]下加入default-character-set = utf8,在[mysql]字段里加入default-character-set=utf8
实现:
1.查看原编码
代码如下 | 复制代码 |
mysql> show variables like 'character%'; //执行编码显示,可以看到默认是latin1 +--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | latin1 | | character_set_connection | latin1 | | character_set_database | latin1 | | character_set_filesystem | binary | | character_set_results | latin1 | | character_set_server | latin1 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | +--------------------------+----------------------------+ |
# vim /etc/my.cnf //添加default-character-set=utf8
代码如下 | 复制代码 |
[client] port = 3306 socket = /var/lib/mysql/mysql.sock default-character-set=utf8 [mysqld] port = 3306 socket = /var/lib/mysql/mysql.sock character-set-server=utf8 [mysql] no-auto-rehash |
代码如下 | 复制代码 |
mysql> show variables like 'character%'; +--------------------------+----------------------------------------+ | Variable_name | Value | +--------------------------+----------------------------------------+ | character_set_client | utf8 | | character_set_connection | utf8 | | character_set_database | utf8 | | character_set_filesystem | binary | | character_set_results | utf8 | | character_set_server | utf8 | | character_set_system | utf8 | | character_sets_dir | /usr/local/mysql/share/mysql/charsets/ | +--------------------------+----------------------------------------+ |
代码如下 | 复制代码 |
SET NAMES ‘utf8′; |
代码如下 | 复制代码 |
SET character_set_client = utf8; SET character_set_results = utf8; SET character_set_connection = utf8; |
朋友的一个站点转到我这边。导入mysql时,mysql还是latin的编码,因此,虽然按上面的步骤,在/etc/my.cnf文件中[client],[mysqld],[mysql]字段里添加default-character-set=utf8,但站点部分中文是乱码。在将mysql编辑改为utf8再重新导入数据库后,就正常了。
估计是mysql是latin编码是,导入数据时,因为mysql无法识别,直接将数据保存成了???这种乱码的形式了
上一页:linux中phpmyadmin安装配置图文详解 下一页:linux
备份数据库与网站文件详解
相关内容
linux下mysql中文乱码(中文问号)解决办法
www.111cn.net 编辑:ever 来源:转载今天发现我mysql插入中文时老出现????号了,但保存英文是没有问题的,下面我来给各位同学介绍一下linux下mysql中文乱码解决方法。
<iframe id="cproIframe_u1339684_1" width="300" height="250" src="http://pos.baidu.com/acom?adn=3&at=134&aurl=&cad=1&ccd=24&cec=GBK&cfv=18&ch=0&col=zh-CN&conOP=0&cpa=1&dai=1&dis=0&layout_filter=rank%2Ctabcloud<r=https%3A%2F%2Fwww.baidu.com%2Flink%3Furl%3DjEFVyS6UIRPO8Ri5ATgS-HaPYn_gBgPb5nvcvmCWUaaSxY02pVJFGVrrSm7Et0V-4y6saBOj0iXLLRk8NaMPgq%26wd%3D%26eqid%3Da66eb1c90003eed400000003565579a3<u=http%3A%2F%2Fwww.111cn.net%2Fsys%2Flinux%2F53209.htm&lunum=6&n=mailangel123_cpr&pcs=1920x955&pis=10000x10000&ps=434x811&psr=1920x1080&pss=1920x725&qn=c993fbe993228559&rad=&rsi0=300&rsi1=250&rsi5=4&rss0=%23FFFFFF&rss1=%23FFFFFF&rss2=%230000FF&rss3=%23444444&rss4=%23008000&rss5=&rss6=%23e10900&rss7=&scale=&skin=&td_id=1339684&tn=text_default_300_250&tpr=1448442561291&ts=1&version=2.0&xuanting=0&dtm=BAIDU_DUP2_SETJSONADSLOT&dc=2&di=u1339684&ti=linux%E4%B8%8Bmysql%E4%B8%AD%E6%96%87%E4%B9%B1%E7%A0%81%EF%BC%88%E4%B8%AD%E6%96%87%E9%97%AE%E5%8F%B7%EF%BC%89%E8%A7%A3%E5%86%B3%E5%8A%9E%E6%B3%95-linux-%E6%93%8D%E4%BD%9C%E7%B3%BB%E7%BB%9F-%E5%A3%B9%E8%81%9A%E6%95%99%E7%A8%8B%E7%BD%91&tt=1448442561260.34.87.90" align="center,center" marginwidth="0" marginheight="0" scrolling="no" frameborder="0" allowtransparency="true"></iframe>
linux下则需要修改/etc/my.cnf,在[mysqld]下加入default-character-set = utf8,[client]下加入default-character-set = utf8,在[mysql]字段里加入default-character-set=utf8
实现:
1.查看原编码
代码如下 | 复制代码 |
mysql> show variables like 'character%'; //执行编码显示,可以看到默认是latin1 +--------------------------+----------------------------+ | Variable_name | Value | +--------------------------+----------------------------+ | character_set_client | latin1 | | character_set_connection | latin1 | | character_set_database | latin1 | | character_set_filesystem | binary | | character_set_results | latin1 | | character_set_server | latin1 | | character_set_system | utf8 | | character_sets_dir | /usr/share/mysql/charsets/ | +--------------------------+----------------------------+ |
# vim /etc/my.cnf //添加default-character-set=utf8
代码如下 | 复制代码 |
[client] port = 3306 socket = /var/lib/mysql/mysql.sock default-character-set=utf8 [mysqld] port = 3306 socket = /var/lib/mysql/mysql.sock character-set-server=utf8 [mysql] no-auto-rehash |
代码如下 | 复制代码 |
mysql> show variables like 'character%'; +--------------------------+----------------------------------------+ | Variable_name | Value | +--------------------------+----------------------------------------+ | character_set_client | utf8 | | character_set_connection | utf8 | | character_set_database | utf8 | | character_set_filesystem | binary | | character_set_results | utf8 | | character_set_server | utf8 | | character_set_system | utf8 | | character_sets_dir | /usr/local/mysql/share/mysql/charsets/ | +--------------------------+----------------------------------------+ |
代码如下 | 复制代码 |
SET NAMES ‘utf8′; |
代码如下 | 复制代码 |
SET character_set_client = utf8; SET character_set_results = utf8; SET character_set_connection = utf8; |
朋友的一个站点转到我这边。导入mysql时,mysql还是latin的编码,因此,虽然按上面的步骤,在/etc/my.cnf文件中[client],[mysqld],[mysql]字段里添加default-character-set=utf8,但站点部分中文是乱码。在将mysql编辑改为utf8再重新导入数据库后,就正常了。
估计是mysql是latin编码是,导入数据时,因为mysql无法识别,直接将数据保存成了???这种乱码的形式了
上一页:linux中phpmyadmin安装配置图文详解 下一页:linux
备份数据库与网站文件详解
相关内容
相关文章推荐
- libpcap在centos安装
- Linux crontab 命令格式与详细例子
- Kali2.0 linux安装漏洞扫描工具Nessus6
- Linux 主机名修改
- linux tee 命令
- CentOS修改Hotname
- CentOS 6.5下Git服务器搭建
- 在CentOS上搭建PHP服务器环境
- linux安装桌面环境(GNOME)VNC连接Linux
- Linux安装VritualBox实现虚拟机win2003端口映射 支持远程
- VBox的Linux虚拟机,共享文件夹
- CentOS7新装系统后需调整的设定
- Linux获取系统当前时间(精确到毫秒)
- Centos7 Lnmp Laravel
- 理解Linux系统负荷
- CentOS安装Subversion 1.9.*版本客户端
- Linux中只列出目录
- Linux下查看文件和文件夹大小
- Linux系统设置定时任务
- VIM入门配置