相关疑难解决方法(0)

utf8_general_ci和utf8_unicode_ci之间有什么区别?

utf8_general_ci和之间utf8_unicode_ci,性能方面有什么不同吗?

mysql unicode collation utf-8 character-set

998
推荐指数
7
解决办法
38万
查看次数

如何将整个MySQL数据库characterset和collat​​ion转换为UTF-8?

如何将整个MySQL数据库字符集转换为UTF-8并将整理转换为UTF-8?

mysql character-encoding

442
推荐指数
8
解决办法
44万
查看次数

导入大型sql文件时,MySQL Server已经消失了

我试图通过phpMyAdmin导入一个大的sql文件...但它一直显示错误

'MySql服务器已经消失'

该怎么办?

mysql phpmyadmin

244
推荐指数
8
解决办法
25万
查看次数

如何使MySQL正确处理UTF-8

其中一个答复的一个问题,我问昨天建议我要确保我的数据库能正确处理UTF-8字符.我怎么能用MySQL做到这一点?

mysql utf-8

95
推荐指数
5
解决办法
21万
查看次数

如何在my.ini中将character_set_database和collat​​ion_database设置为utf8?

我已经搜索了很多关于这个问题的信息.总而言之,这就是我的my.ini样子:

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 

[client]
database = abcdef
user = root
password = XXXXXX
default-character-set = utf8

[mysql]
default-character-set=utf8

[mysqld]
character_set_server=utf8
max_connections = 200
init_connect='SET collation_connection = utf8_general_ci' 
init_connect='SET NAMES utf8' 
Run Code Online (Sandbox Code Playgroud)

当我通过cmd进入mysql并发出:时show variables like "%character%";show variables like "%collation%";,这就是我得到的:

+--------------------------+---------------------------------+
| Variable_name            | Value                           |
+--------------------------+---------------------------------+
| character_set_client     | utf8                            |
| character_set_connection | utf8                            |
| character_set_database   | latin1                          |
| character_set_filesystem | binary                          |
| character_set_results    | utf8                            |
| character_set_server     | utf8                            |
| character_set_system     | …
Run Code Online (Sandbox Code Playgroud)

mysql utf-8 character-encoding

28
推荐指数
3
解决办法
5万
查看次数

PDO :: __ construct():服务器发送了客户端未知的charset(255).请向开发人员报告

我正在尝试从Symfony 3应用程序连接到MySQL数据库.但是当尝试从Symfony控制台命令创建MySQL模式时,我收到此错误:PDO::__construct(): Server sent charset (255) unknown to the client. Please, report to the developers

PHP和MySQL都在Docker容器中运行.

MySQL版本: 8.0.1

PHP版本: 7.1.3

司机: pdo_mysql

字符集: UTF8

DSN: "mysql:host=mysql;dbname=database;charset=UTF8;"

有任何想法吗?

php mysql pdo symfony doctrine-orm

28
推荐指数
4
解决办法
6万
查看次数

无法在数据库中存储表情符号

情况:

如果已经提出这个问题,请提前抱歉,但解决方案对我不起作用.

无论我尝试什么,我都不能将表情符号存储在我的数据库中.他们被保存为????.
正确保存的唯一表情符号只需要3个字节,如害羞的脸或太阳.

实际的utf8mb4无效.

数据库截图

它已经在Android和Ios上进行了测试.结果相同.

版本:

Mysql:5.5.49
CodeIgniter:3.0.0

步骤:

  1. 我修改了数据库字符集和排序规则属性.

    ALTER DATABASE my_database CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci

  2. 我修改了表字符集和排序规则属性.

    ALTER TABLE table_name CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci

  3. 我在可能的情况下将表的每个字段设置为Encoding:UTF-8(ut8mb4)和Collat​​ion:utf8mb4_unicode_ci

  4. 我在CodeIgniter应用程序中修改了数据库连接.

  5. 我运行了以下内容: SET NAMES utf8mb4 COLLATE utf8mb4_unicode_ci

  6. 最后我也试过这个: REPAIR TABLE table_name; OPTIMIZE TABLE table_name;

一切都应该设置正确,但它不起作用.

数据库设置:

这是运行以下命令的结果:

`SHOW VARIABLES WHERE Variable_name LIKE 'character\_set\_%' OR Variable_name LIKE 'collation%';`
Run Code Online (Sandbox Code Playgroud)

数据库设置

表设置:

表结构的screeshot:

表设置

数据库连接:

这些是database.php中的数据库连接设置(注意这不是唯一的数据库,还有其他使用utf8连接的数据库)

$db['my_database'] = array(
        'dsn'           => …
Run Code Online (Sandbox Code Playgroud)

php mysql android codeigniter ios

19
推荐指数
1
解决办法
9240
查看次数

在MySQL中,我在my.cnf中放置了什么,以便所有表格都是UTF-8默认情况下与emojis一起使用?

我希望每个表和数据库(要创建)都是与emojis一起使用的utf-8.我知道我需要在里面定义一些变量my.cnf:

init_connect='SET collation_connection = ??? '
init_connect='SET NAMES ???'
character-set-server = ???
collation-server = ???
Run Code Online (Sandbox Code Playgroud)

但是,我不知道该放什么???.我放在里面my.cnf怎么样?

mysql database

16
推荐指数
1
解决办法
823
查看次数

使用SQLAlchemy和pymysql,如何设置连接以使用utf8mb4?

我发现(艰难的方式)MySQL的UTF8字符集只有3个字节.一些研究表明,我可以通过更改表来利用utf8mb4排序规则来解决这个问题,并获得UTF应该是完整的4个字节.

我已经这样做了.我的数据库,表格和列都已被ALTER编辑以利用此字符集.但是,如果我的数据的unicode代码点大于U + FFFF,我仍会收到此消息:

Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation '='"
Run Code Online (Sandbox Code Playgroud)

我发现我有以下设置:

> show variables like '%collation%';

collation_connection  utf8_general_ci
collation_database    utf8mb4_general_ci
collation_server      utf8mb4_general_ci
Run Code Online (Sandbox Code Playgroud)

collation_server是通过更改设置my.cnf.我的问题是,如何更改连接?我目前使用SQL Alchemy和pymysql连接到数据库,如下所示:

connect_string = 'mysql+pymysql://{}:{}@{}:{}/{}?charset=utf8'.format(DB_USER, DB_PASS, DB_HOST, DB_PORT, DATABASE)
engine = create_engine(connect_string, convert_unicode=True, echo=False)
session = sessionmaker()
session.configure(bind=engine)
Run Code Online (Sandbox Code Playgroud)

我能做些什么来改变从utf8_general_ciutf8mb4_general_ci通过SQL炼金术连接时?

python mysql sqlalchemy utf8mb4 pymysql

14
推荐指数
1
解决办法
1万
查看次数

如何设置默认字符集?

我想在mysql中创建一个新的db.我将utf8设置为默认字符集,但是当我尝试重新启动数据库时,mysql无法重新启动并发布以下提示:

试图启动服务器...无法重新连接到MySQL服务器.服务器无法启动.

插件'FEDERATED'已停用.

C:\ Program Files\MySQL\MySQL Server 5.5\bin\mysqld:未知变量'default-character-set = utf8'

中止

C:\ Program Files\MySQL\MySQL Server 5.5\bin\mysqld:关闭完成

我知道在取消默认字符集后,mysql会重启.但是如果我必须设置默认字符集,还有其他方法可以让mysql再次运行吗?

mysql

12
推荐指数
2
解决办法
2万
查看次数