mysql修改配置文件后无法启动问题解决办法 |
mysql修改配置文件后无法启动问题解决办法: 今天因为mysql默认的utf8编码无法存储emoji表情导致插入数据报错,于是打算修改配置文件将utf8编码修改为utf8mb4,可是修改后发现mysql无法启动了!!! 经过一番折腾发现原来,mysql配置文件默认是ANSI编码格式,我再修改后不慎将其保存成了UTF-8导致的,于是将my.ini再保存成ANSI编码就可以成功启动了! 将mysql默认编码改成utf8mb4的流程如下: 关闭mysql服务 修改my.ini配置文件(修改方法下面有写),注意要保存成ANSI编码 启动mysql服务 修改变量,(设置方法下面有写) 检查是否设置成功,(检查方法下面有写) 修改my.ini配置参考我的配置:(只需要关注utf8mb4部分配置就可,部分配置不必参考我的) [mysqld] character-set-client-handshake = FALSE character-set-server = utf8mb4 collation-server = utf8mb4_unicode_ci init_connect=SET NAMES utf8mb4 sql_mode=STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION default_storage_engine=innodb innodb_buffer_pool_size=1000M innodb_log_file_size=50M innodb_file_format=barracuda innodb_file_per_table=true innodb_large_prefix=true max_allowed_packet=500M # 设置mysql的安装目录 basedir=D:\mysql-5.6.40-winx64 # 设置mysql数据库的数据的存放目录 datadir=D:\mysql-5.6.40-winx64\data # 允许最大连接数 max_connections=200 [mysql] default-character-set = utf8mb4 [client] default-character-set = utf8mb4 修改变量方法: 执行下面sql就行了 set character_set_client = utf8mb4; set character_set_connection = utf8mb4; set character_set_database = utf8mb4; set character_set_results = utf8mb4; 检查知否设置成功方法: 执行sql SHOW VARIABLES WHERE Variable_name LIKE character_set_% OR Variable_name LIKE collation%; 结果如下说明成功了 |