Win10安装MySQl8+服务#
1.软件路径如D:\soft\mysql-8.4#
2.根目录配置my.ini#
[mysqld]
# 设置端口 同一机器设置不同端口
port = 3306
# 设置mysql的安装目录
basedir= D:/soft/mysql-8.4
# 设置mysql数据库的数据的存放目录
datadir= D:/soft/mysql-8.4/data
# 允许最大连接数
max_connections=20
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
mysql_native_password=ON
log-bin=mysql-bin
gtid-mode=on
log_replica_updates=true
enforce-gtid-consistency=true
sync_binlog=0
binlog-checksum=CRC32
source_verify_checksum=1
replica_sql_verify_checksum=1
binlog-rows-query-log_events=1
sync_source_info=1
#expire_logs_days=5
max_binlog_size=1024M
# 主从服务ID主=1 其他递增
server-id=1
# #masterA自增长ID #奇数ID #偶数ID
auto_increment_offset = 1
auto_increment_increment = 2
replicate-ignore-db = mysql
replicate-ignore-db = information_schema
replicate-ignore-db = performance_schema
replicate-ignore-db = sys
#skip-character-set-client-handshake #忽略应用程序想要设置的其他字符集
init-connect='SET NAMES UTF8MB4' #连接时执行的SQL
character-set-server=UTF8MB4 #服务端默认字符集
wait_timeout=1800 #请求的最大连接时间
interactive_timeout=1800 #和上一参数同时修改才会生效
#sql_mode=STRICT_TRANS_TABLES #sql模式
max_allowed_packet = 10M
bulk_insert_buffer_size = 8M
#skip-name-resolve
slow_query_log=1
long_query_time = 6
slow_query_log_file=slow-query.log
innodb_flush_log_at_trx_commit = 2
innodb_log_buffer_size = 16M
[myisamchk]
key_buffer_size = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M
[mysqlhotcopy]
interactive-timeout
[mysqldump]
quick
max_allowed_packet = 16M
3.安装脚本install.bat#
@echo off
:: MySQL 安装目录
set MYSQL_HOME=D:/soft/mysql-8.4
set DATADIR=%MYSQL_HOME%/data
echo 停止旧服务(如果存在)...
sc query MySQL84 >nul 2>nul
if %errorlevel%==0 (
net stop MySQL84
sc delete MySQL84
)
echo 删除旧的数据目录...
rmdir /S /Q "%DATADIR%"
mkdir "%DATADIR%"
echo 初始化 MySQL 数据库(无密码)...
"%MYSQL_HOME%/bin/mysqld.exe" --initialize-insecure --basedir="%MYSQL_HOME%" --datadir="%DATADIR%"
echo 安装 MySQL 服务 (MySQL84)...
"%MYSQL_HOME%/bin/mysqld.exe" --install MySQL84
echo 启动 MySQL 服务...
net start MySQL84
echo 设置 root 密码为 123456...
"%MYSQL_HOME%/bin/mysql.exe" -u root --execute="ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456'; FLUSH PRIVILEGES;"
echo MySQL 8.4 安装完成,root 密码已设置为 123456
pause