Windows手动安装MySQL8.0
环境准备
安装MySQL8.0时出现以上错误需要安装Visual C++ Redistributable for Visual Studio 2015,如果安装VC++ 2015出现以下错误:
说明系统中已经安装VC++ 2015以上版本,请下载适用于 Visual Studio 2015、2017 和 2019 的最新支持的 Visual C++ 可再发行软件包:
配置文件
MySQL具有许多默认参数,您可以在服务启动时使用命令行选项或配置文件进行更改,在Windows上我们可以创建.ini
或 .cnf
文件。在MySQL根目录下我们新建my.ini
,用记事本打开,例如,[mysqld]
部分,安装目录 E:/MySQL/mysql-8.0.19-winx64
,数据目录 E:/MySQL/mysql-8.0.19-winx64/data
:
[mysqld]
# set basedir to your installation path
basedir=E:/MySQL/mysql-8.0.19-winx64
# set datadir to the location of your data directory
datadir=E:/MySQL/mysql-8.0.19-winx64/data
从MySQL 8.0.16开始,MySQL支持一个--validate-config
选项,该选项使您无需在正常操作模式下运行服务器即可检查启动配置是否存在问题:
mysqld --validate-config
mysqld --defaults-file=../my.ini --validate-config
初始化数据目录
手动配置安装MySQL ,不包含数据目录,需要初始化数据目录。打开控制台窗口(或“ DOS窗口 ”)进入E:/MySQL/mysql-8.0.19-winx64/bin
,执行如下命令:
mysqld --defaults-file=../my.ini --initialize --console
--defaults-file
:可以指定绝对路径或相对路径;
--initialize
:初始化数据目录,与--initialize-insecure
不同的是--initialize
包括生成随机初始的 root
密码。在这种情况下,密码被标记为已过期,您将需要修改新密码。
启动服务
首次启动,最好从控制台窗口(或“ DOS窗口 ”)中完成测试,执行以下命令:
mysqld --console
服务启动完成后,可以看下如下提示:
安装Windows服务
在Windows上,建议将其安装为Windows服务,以便在Windows开机和关机时MySQL自动启动和停止,要将MySQL安装为Windows服务,应使用具有管理员权限的帐户登录。
使用以下命令将MySQL作为服务安装,默认服务名称mysql:
mysqld --install
指定服务名MySQL 8.0:
mysqld --install MySQL-8.0
--install-manual
:手动启动服务
--install
:自动启动服务
如出现以下错误,请以管理员权限运行
控制台窗口
删除Windows服务
mysqld --remove MySQL-8.0
SC DELETE MySQL-8.0
初始化root密码
启动服务,如果您使用--initialize
初始化数据目录,使用控制台窗口(或“ DOS窗口 ”)连接数据库:
mysql -uroot -p
输入初始化数据目录时生成的随机密码:
Enter password: (enter the random root password here)
如果不知道此密码,请查看MySQL错误日志。
如果您使用--initialize-insecure
初始化数据目录,请使用 root
不带密码的方式连接到服务器:
mysql -u root --skip-password
使用ALTER USER
语句分配root
密码:
ALTER USER '用户名'@'主机(% 任意IP)' IDENTIFIED BY 'root-password';
使用CREATE USER
语句创建新账号:
CREATE USER '用户名'@'主机(% 任意IP)' IDENTIFIED BY 'root-password';
设置用户权限:
GRANT ALL PRIVILEGES ON *.* TO '用户名'@'主机(% 任意IP)'; --全库所有权限,第一个*表示库名,第二个*表示可访问的表