方案一:

通过SET设置,但这是临时的方案,并且只有在当前会话窗口才有效,甚至设置全局sql_mode,都只是个临时解决方案。
方案二:
1、在MySQL根目录下创建my.ini
2、创建data文件夹,如果是之前就已经有data了,在my.ini指向原有的data路径即可
3、重新启动mysql服务
[mysql]
default-character-set=utf8
[mysqld]
port = 3306
basedir=C:\Users\Admin\Documents\WorkSpace\Tools\mysql-8.0.18-winx64
datadir=C:\Users\Admin\Documents\WorkSpace\Tools\mysql-8.0.18-winx64\data
max_connections=200
character-set-server=utf8
default-storage-engine=INNODB
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
innodb_buffer_pool_size = 128M
#
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
#
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
join_buffer_size = 128M
sort_buffer_size = 16M
read_rnd_buffer_size = 16M
sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'
CentOS 修改方案见《【服务器运维】MySQL数据存储至数据盘》
本文介绍了两种在MySQL中设置utf8字符集的方法:一种是通过SET SQL命令,但效果仅限于当前会话;另一种是永久修改my.ini配置文件,包括指定datadir、设置max_connections、sql_mode等关键参数,并重启服务以应用更改。对于CentOS系统,还提供了相应的数据存储到数据盘的调整方案。
1010

被折叠的 条评论
为什么被折叠?



