在过去,我们装好了MySQL的服务后,要创建MySQL的数据库,我们使用:mysql_install_db。

但在最新的版本中,该功能被替换了:

通过上面的命令反馈,你可以看到,MySQL在数据库初始化方面,推荐我们使用:mysqld –initialize。

正式开始操作前,先查看下配置文件中的相关设置:

你需要关注的是:
datadir,这个目录中需要为空,该路径是存放你的MySQL数据文件的地方,你可以自行指定。
log-eror,日志文件,所有MySQL相关的命令输出以及发生的事件,都可以在日志文件中找到对应的条目。

查看下datadir的状态,并置空:

开启一个全新的会话,监控日志文件的变化:

开始操作:

查看datadir的变化:

查看日志文件的变化:

注意:
上面的“[Note] A temporary password is generated for”,就是“mysqld –initialize”命令执行过程中,自动为root@localhost 账户设置的临时口令。

我们使用临时口令登录MySQL:

这里,由于我为了演示方便,明文贴出了登录口令,所以会有上面的这条警告:
mysql: [Warning] Using a password on the command line interface can be insecure.

使用临时口令登录数据库后,你首先需要更改口令,否则你什么都做不了:

修改口令:

然后,你就可以做希望的操作了:

在初始化数据库的时候,其实还有另一个方法:–initialize-insecure

后台日志:

通过日志你可以看到:
[Warning] root@localhost is created with an empty password !

这样的方式创建的数据库的root账户是没有口令的。

我们登陆试试:

可以看到,确实没有密码就登录了MySQL,并且没有临时口令带来的修改密码的问题。

————————————————
Done。

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

隐藏
变装