MySQL数据库无法通过 utf8mb4 连接的解决方式

环境:阿里云 centos 6.5 mysql 5.6 python
问题:通过uri里面设置 charset=utf8mb4 连接数据库时,发生问题

Character set ‘utf8mb4’ is not a compiled character set and is not specified in the ‘/path/mysql/charsets/Index.xml’ file

经排查,是使用的mysql-devel 的版本是 5.1.73,太老导致。可通过如下命令查询其版本

rpm -qa | grep mysql

于是将其卸载,重装,发现 阿里云的默认源重装还是 5.1.73 的老版本,于是加入官方源

rpm -Uvh http://repo.mysql.com/mysql-community-release-el6-5.noarch.rpm

安装完之后,运行发生“libmysqlcilent_r.so.16 No such file or directory”这个错误。
查了一下,现在有的库文件是 libmysqlcilent_r.so.18,网上的一种解决方法是用软链接,把 18的版本变为 16,但我并不认为这是个好方法。
于是重装 python 的 mysqlclient库,结果,之前我用的是阿里的镜像,重装之后还是老问题,怀疑是cache导致安装的版本有误。于是把镜像的引用删除之后,重装

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
MySQL数据库中的中文乱码问题可以通过将数据库的编码设置为utf8mb4解决utf8mb4编码是utf8编码的超集,兼容utf8,并且能够存储4字节的表情字符。 要确认MySQL服务器是否支持utf8mb4编码,您可以在输入密码后进入mysql,并输入以下命令: ```sql SHOW VARIABLES LIKE 'character_set_database'; ``` 这将显示数据库的字符集设置。如果该设置为utf8mb4,那么MySQL服务器支持utf8mb4编码,可以正确存储和展示中文字符。 如果设置不是utf8mb4,您可以通过更改数据库的字符集设置为utf8mb4解决中文乱码问题。可以参考相关的文章或文档进行操作,具体步骤可能会因为不同的MySQL版本而有所不同。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [MySQL乱码问题以及utf8mb4字符集](https://blog.csdn.net/weixin_33332385/article/details/113229400)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [如何更改MySQL数据库的编码为utf8mb4](https://download.csdn.net/download/weixin_38590996/12823085)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值