linux中mysql插入中文数据乱码
时间: 2024-01-10 17:02:09 浏览: 106
在 Linux 中,如果 MySQL 插入中文数据出现乱码,可以尝试以下方法:
1. 修改 MySQL 配置文件 my.cnf,在 [mysqld] 下加入以下内容:
```ini
character_set_server=utf8mb4
collation-server=utf8mb4_unicode_ci
```
2. 重启 MySQL 服务。
3. 在插入数据之前,先执行以下命令:
```sql
SET NAMES utf8mb4;
```
或者
```sql
SET character_set_client=utf8mb4;
```
这将设置 MySQL 客户端的字符集为 utf8mb4。
4. 在插入数据时,确保数据的编码为 utf8mb4。可以在命令行中执行以下命令:
```sql
INSERT INTO table_name (column1, column2) VALUES ('中文数据', 'more data');
```
或者在脚本中指定编码:
```python
# -*- coding: utf-8 -*-
```
以上是解决 MySQL 插入中文数据乱码的一些基本方法,如果还有问题可以进一步排查 MySQL 的字符集设置和应用程序的编码设置。
相关问题
linux中mysql插入中设置字符集为utf—8
在 Linux 中,你可以在 MySQL 命令行中执行以下命令,将 MySQL 的字符集设置为 UTF-8:
1. 首先登录 MySQL:
```
mysql -u username -p
```
2. 进入 MySQL 命令行后,执行以下命令,设置 MySQL 客户端字符集为 UTF-8:
```
SET NAMES utf8;
```
3. 然后执行以下命令,设置 MySQL 服务器字符集为 UTF-8:
```
ALTER DATABASE database_name CHARACTER SET utf8 COLLATE utf8_general_ci;
```
其中,`database_name` 是你要操作的数据库名称,`utf8_general_ci` 是一种基于 UTF-8 的字符排序方式,你也可以根据需要选择其他的排序方式。
4. 最后,你可以在执行插入操作之前,将要插入的数据编码转换为 UTF-8 格式,以确保插入的数据不会出现乱码。
如果你需要将表中的字符集设置为 UTF-8,可以使用以下命令:
```
ALTER TABLE table_name CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
```
其中,`table_name` 是你要操作的表名称。
阅读全文
相关推荐














