本文介绍如何在需要的时候,花 5 分钟快速搭建一个 MySQL 服务器(不包括下载时间)。
MySQL 下载页面:https://dev.mysql.com/downloads/mysql/
MySQL 是不需要安装的,官网上有 zip 包下载,解压出来即可使用。但具体要怎么做呢?分为三步:
一、初始化数据目录
首先规划一个目录作为你需要存放数据的地方,然后在 mysql 目录下执行下面的命令:
bin\mysqld.exe --datadir=[自定义数据存放目录] --initialize
initialize
参数告诉 MySQL 对 --datadir
指定的目录进行初始化。初始化完成后程序会自动退出。你会在 datadir
目录下看到一个以 .err 结尾的日志文本文件,该文件的末尾记录了数据库的 root
初始密码。把这个密码记下来,以便登录修改。
注意:初始化时,数据存放目录必须是空的,否则 MySQL 就会提示错误
[ERROR] --initialize specified but the data directory has files in it. Aborting.
然后退出。如果初始化过程成功完成,则不会有任何输出。
二、正式运行数据库
初始化完成后,就可以正式运行了。很多文章介绍运行 MySQL 的时候要如何去修改配置文件,但其实这不是必需的,因为配置文件中的绝大多数配置都可以直接在运行命令中指定。本文介绍的是如何快速搭建 MySQL,所以直接执行命令就好。
MySQL 的服务器程序名叫 mysqld.exe,其包含的所有参数,官方文档在这里: https://dev.mysql.com/doc/refman/5.7/en/server-options.html
本文只要将数据库简单的运行起来,用少数几个参数就可以了。命令如下:
start bin\mysqld.exe --bind-address=0.0.0.0 --port=3306 --datadir=[数据存放目录] --character-set-server=utf8 --collation-server=utf8_general_ci
这个命令用 start
开头,意思是后台执行。你会看到一个窗口一闪而过,这并不表示执行失败,你可以打开任务管理器,就能找到 mysqld.exe 进程。如果没有找到该进程,说明数据库启动失败,请打开数据目录下 .err 结尾的日志文件,根据里面的错误信息来处理。
--bind-address
参数指的是侦听地址,0.0.0.0 表示网络上的所有电脑都可以连到这个数据库。如果不想被别的电脑访问,可改为 127.0.0.1。
如果你想在当前窗口中直接看到 MySQL 的输出,可以这样修改上面的命令:先去掉
start
开头,然后加上
--console
参数,该参数表示将日志输出到命令行而不是文件。整个命令即为:
bin\mysqld.exe --bind-address=0.0.0.0 --port=3306 --datadir=[数据存放目录] --character-set-server=utf8 --collation-server=utf8_general_ci --console
当数据库成功启动后,建议将这个命令保存在批处理文件里,以便下次运行。
三、修改 root 密码
这是初始化数据库的最后一步。首先登录数据库:
bin\mysql.exe -u root -p
输入之前记下的 root 密码即可登录。如果登录失败,或者密码丢失了,最坏的情况你可能需要清空数据目录,从本文第一步开始重新来过。
登录成功后,执行下面的命令修改 root 密码:
-- for MySQL 5-7
set password=password('[新的root密码]');
-- for MySQL 8
set password for root@localhost='[新的root密码]';
好,大功告成,你可以正式开始使用这个 MySQL 数据库了。