mysql数据表默认utf8_设置Mysql数据库的默认编码为utf8

该博客详细记录了如何进入MySQL并查看当前字符集,然后暂停服务,修改my.cnf配置文件,将默认字符集更改为UTF8,并添加相关设置。在遇到权限问题导致启动失败后,调整my.cnf的权限为755,成功重启MySQL服务,并验证了字符集已更改为UTF8。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

进入mysql,查看默认编码:$ mysql -uroot -proot

$ show variables like character%'

显示字符编码:+--------------------------+----------------------------+

| 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/ |

+--------------------------+----------------------------+

现暂停mysql服务:$sudo /etc/init.d/mysql stop

修改 /etc/mysql/my.cnf$ sudo chmod 777 /etc/mysql/my.cnf

$ vim /etc/mysql/my.cnf

在client下面加上:default-character-set=utf8

在mysqld下面加上:default-character-set=utf8

init_connect='SET NAMES utf8'

保存,退出wq

重启mysql服务:$sudo /etc/init.d/mysql start

发现出错:Warning: World-writable config file '/etc/mysql/my.cnf' is ignored

/usr/bin/mysqladmin: connect to server at 'localhost' failed

error: 'Access denied for user 'luoping'@'localhost' (using password: NO)'

原因为:/etc/mysql/my.cnf 权限太高,搜索了一番,有人说许改为600,但是我发觉不行,查看了/etc/mysql/文件夹里的其他文件,权限是755,所以修改权限$sudo chmod 755 /etc/mysql/my.cnf

重启mysql服务,OK

再次查看数据库编码$ mysql -uroot -proot

$ 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/share/mysql/charsets/ |

+--------------------------+----------------------------+

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值