Windows操作系统中,我们安装Mysql有两个选择:
而在使用ZIP安装时,安装好之后默认是没有my.ini配置文件的,这时就需要我们手动创建配置文件。
管理员打开cmd,切换到安装目录mysql下的bin目录
(若还没有安装可跳过)
D:\MySql\bin>sc delete MySql服务名称(一般为MySql)
(创建在MySql的安装路径根目录下,即bin同一级目录)
配置文件内容
#客户端设置 [client] # 设置mysql客户端默认字符集 default-character-set = utf8mb4 [mysql] default-character-set = utf8mb4 #服务端基本配置 [mysqld] #character-set-client-handshake = FALSE # 服务端使用的字符集默认为8比特编码的latin1字符集 character-set-server = utf8mb4 #collation-server = utf8mb4_bin #init_connect='SET NAMES utf8mb4' # 设置mysql的安装目录 basedir = D:\MySQL # 设置 mysql数据库的数据的存放目录,MySQL 8+ 不需要以下配置,系统自己生成即可,否则有可能报错 #datadir = D:\MySQL\data # 设置端口 port = 3306 #最大连接数,当前服务器允许多少并发连接 max_user_connections = 50 #程序中经常会出现一些两表或多表 Join (联表查询)的操作。为了减少参与 Join 连表的读取次数以提高性能,需要用到 Join Buffer 来协助 Join 完成操作。当 Join Buffer 太小时,MySQL 不会将它写入磁盘文件。和 sort_buffer_size 一样,此参数的内存分配也是每个连接独享 #join_buffer_size = 128M #MySQL 执行排序时,使用的缓存大小。增大这个缓存,提高 group by,order by 的执行速度 #sort_buffer_size = 16M #用于表的随机读取,读取时每个线程分配的缓存区大小。默认为 256k ,一般在 128 - 256k之间。在做 order by 排序操作时,会用到 read_rnd_buffer_size 空间来暂做缓冲空间 #read_rnd_buffer_size = 16M #sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
(删除之前生成的data文件,如果有重要的数据表,请先备份好)
D:\MySql\bin>mysqld --initialize-insecure --user=mysql
同时绑定my.ini配置文件
D:\MySql\bin>mysqld --install "NewMySql" --defaults-file="d:/mysql/my.ini"
其中“NewMySql”是服务名称,可以自定义
defaults-file:”..\my.ini“是新建的配置文件的位置,也可以写成绝对路径”D:\MySql\my.ini“
D:\MySql\bin>net start NewMySql
以后再修改配置文件只需要重启服务即可
以上为个人经验,希望对您有所帮助。