赞
踩
mysql不同的安装方式会导致是否生成my.ini文件,一般情况下使用ZIP安装时,安装好之后默认是没有my.ini配置文件。
当我们想修改数据库的配置信息,若没有my.ini文件会很麻烦。
当前情况如下:
数据库安装在E:\Program Files\MySQL\MySQL Server 5.7,该文件夹下没有my.ini,但是有my-default.ini。
根据网上的方式,把my-default.ini移除,复制一个my.ini文件放在当前安装目录下,my.ini内容如下(根据自己的实际情况进行配置):
#
#此数据库没有my.ini文件,当前文件为后来增加的
#
#[client]
default-character-set =utf8mb4[mysql]
default-character-set =utf8mb4[mysqld]
character-set-client-handshake =FALSEcharacter-set-server =utf8mb4
collation-server =utf8mb4_bin
init_connect='SET NAMES utf8mb4'# Remove leading #and set to the amount of RAM forthe most important data
# cachein 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
# changesto the binary log betweenbackups.
# log_bin
# These are commonlyset, remove the # and set asrequired.
#该参数指定了安装 MySQL 的安装路径,填写全路径可以解决相对路径所造成的问题。
basedir= E:/Program Files/MySQL/MySQL Server 5.7#该参数指定了 MySQL 的数据库文件放在什么路径下。数据库文件即我们常说的 MySQL data 文件。
datadir= E:/Program Files/MySQL/MySQL Server 5.7/Data
port= 3306# server_id=.....
# Remove leading #to set options mainly useful forreporting servers.
# The server defaults are fasterfor transactions andfast SELECTs.
# Adjust sizesas needed, experiment to find the optimal values.
join_buffer_size=128M
sort_buffer_size=16M
read_rnd_buffer_size=16M
#定义应该支持的sql语法,对数据的校验等等
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
max_allowed_packet=300M
注意问题:
根据自己的情况修改basedir和datadir;
特别是datadir,这台服务器有三个data文件夹,分别为
C:/ProgramData/MySQL/MySQL Server 5.7/Data
E:/ProgramData/MySQL/MySQL Server 5.7/Data
E:/Program Files/MySQL/MySQL Server 5.7/Data
也不知道为什么会这么乱,尝试着来吧,
datadir设置第一个,重启服务成功,但是其他配置没生效;
第二个,重启服务成功,配置生效,但是竟然丢失部分表数据,why?
第三个,重启服务成功,配置生效,数据正常。
发现一个挺不错的处理方式,但是我的服务器上运行的系统比较多,十几个库,算了算了,能跑就行。。。。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。