windows 系统安装 mysql
本文讲述了如何在 Windows Server 2019 系统上安装 mysql,并修改服务端口为 3406,仅供学习和参考。
安装 Microsoft Visual C++
- 配置wget及unzip
curl -o wget.exe http://iso.sqlfans.cn/windows/system32/wget.exe
curl -o unzip.exe http://iso.sqlfans.cn/windows/system32/unzip.exe
move /y wget.exe c:\windows\system32\
move /y unzip.exe c:\windows\system32\
- 安装 Microsoft Visual C++ 2015-2019,否则在 mysql 初始化的时候报错"由于找不到 VCRUNTIME140_1.dll,无法继续执行代码。"
cd /d d:\tools
wget -c http://iso.sqlfans.cn/windows/vc++/vc_redist_vs2015-2019.x64.exe
start vc_redist_vs2015-2019.x64.exe
安装 mysql 5.7.44
- 以管理员身份运行cmd,参考如下步骤,示例mysq服务端口为 3406
::#.1.下载安文件
cd /d d:\tools
wget -c https://cdn.mysql.com/archives/mysql-5.7/mysql-5.7.44-winx64.zip
unzip mysql-5.7.44-winx64.zip
move mysql-5.7.44-winx64 mysql
::#.2.创建目录
mkdir d:\sqldata\mysql_3406\binlog
mkdir d:\sqldata\mysql_3406\data
mkdir d:\sqldata\mysql_3406\iblog
mkdir d:\sqldata\mysql_3406\log
mkdir d:\sqldata\mysql_3406\tmp
::#.3.初始化,使用 --initialize-insecure 创建空密码
cd /d d:\tools
wget -c http://iso.sqlfans.cn/mysql/config/my57.win.ini
move /y my57.win.ini d:\sqldata\mysql_3406\my_3406.ini
d:\tools\mysql\bin\mysqld.exe --defaults-file="d:\sqldata\mysql_3406\my_3406.ini" --datadir="d:\sqldata\mysql_3406\data" --initialize-insecure
::#.4.配置mysql服务及启动
d:\tools\mysql\bin\mysqld.exe --install MySQL57 --defaults-file="d:\sqldata\mysql_3406\my_3406.ini"
net start MySQL57
netstat -ano | find "3406"
::#.5.添加防火墙
netsh advfirewall firewall add rule name="permit_mysql_tcp_3406" protocol=TCP dir=in remoteip=192.168.0.0/255.255.0.0 localport=3406 action=allow
::#.6.登陆mysql并修改密码
d:\tools\mysql\bin\mysql.exe -uroot -P3406 --connect-expired-password -e"alter user 'root'@'localhost' identified by 'Q8yWuLJ1q_Sth9fA';"
d:\tools\mysql\bin\mysql.exe -uroot -pQ8yWuLJ1q_Sth9fA -P3406 -e"select host,user,plugin,account_locked from mysql.user;"
d:\tools\mysql\bin\mysql.exe -uroot -pQ8yWuLJ1q_Sth9fA -P3406 -e"update mysql.user set host='%' where user='root' and host='localhost';"
d:\tools\mysql\bin\mysql.exe -uroot -pQ8yWuLJ1q_Sth9fA -P3406 -e"flush privileges;"
d:\tools\mysql\bin\mysql.exe -uroot -pQ8yWuLJ1q_Sth9fA -P3406 -e"select host,user from mysql.user;"
安装 mysql 8.0.42
- 以管理员身份运行cmd,参考如下步骤,示例mysq服务端口为 3406
::#.1.下载安文件
cd /d d:\tools
wget -c https://cdn.mysql.com/archives/mysql-8.0/mysql-8.0.42-winx64.zip
unzip mysql-8.0.42-winx64.zip
move mysql-8.0.42-winx64 mysql
::#.2.创建目录
mkdir d:\sqldata\mysql_3406\binlog
mkdir d:\sqldata\mysql_3406\data
mkdir d:\sqldata\mysql_3406\iblog
mkdir d:\sqldata\mysql_3406\log
mkdir d:\sqldata\mysql_3406\tmp
::#.3.初始化,使用 --initialize-insecure 创建空密码
cd /d d:\tools
wget -c http://iso.sqlfans.cn/mysql/config/my80.win.ini
move /y my80.win.ini d:\sqldata\mysql_3406\my_3406.ini
d:\tools\mysql\bin\mysqld.exe --defaults-file="d:\sqldata\mysql_3406\my_3406.ini" --datadir="d:\sqldata\mysql_3406\data" --initialize-insecure
::#.4.配置mysql服务及启动
d:\tools\mysql\bin\mysqld.exe --install MySQL80 --defaults-file="d:\sqldata\mysql_3406\my_3406.ini"
net start MySQL80
netstat -ano | find "3406"
::#.5.添加防火墙
netsh advfirewall firewall add rule name="permit_mysql_tcp_3406" protocol=TCP dir=in remoteip=192.168.0.0/255.255.0.0 localport=3406 action=allow
::#.6.登陆mysql并修改密码
d:\tools\mysql\bin\mysql.exe -uroot -P3406 --connect-expired-password -e"alter user 'root'@'localhost' identified with mysql_native_password by 'Q8yWuLJ1q_Sth9fA';"
d:\tools\mysql\bin\mysql.exe -uroot -pQ8yWuLJ1q_Sth9fA -P3406 -e"select host,user,plugin,account_locked from mysql.user;"
d:\tools\mysql\bin\mysql.exe -uroot -pQ8yWuLJ1q_Sth9fA -P3406 -e"update mysql.user set host='%' where user='root' and host='localhost';"
d:\tools\mysql\bin\mysql.exe -uroot -pQ8yWuLJ1q_Sth9fA -P3406 -e"flush privileges;"
d:\tools\mysql\bin\mysql.exe -uroot -pQ8yWuLJ1q_Sth9fA -P3406 -e"select host,user from mysql.user;"
如何卸载
- 示例:卸载 MySQL57 服务
net stop MySQL57
del /f /s /q d:\sqldata\mysql_3406
rd /s /q d:\sqldata\mysql_3406
d:\tools\mysql\bin\mysqld.exe --remove MySQL57