mysql5.7非安装版本初始化
MySQL5.7.6后,下载版的初始化操作备忘
As of MySQL 5.7.6, if you initialized the data directory manually using mysqld –initialize and followed the instructions in Section 2.10.1.1, “Initializing the Data Directory Manually Using mysqld”, you should have assigned a password to the initial account.
上文引用自MySQL文档
出于安全考虑,配置my.cnf
后,需要输入
1 | bin/mysqld --initialize |
初始化database
文件夹,默认会给本地root
用户生成一个随机的密码,因此需要一些额外的操作。
以下操作在Linux中完成,Win环境大同小异,参考官方文档
使用--initialize-insecure
配置好my.cnf
后,使用initialize-insecure
参数初始化即可
1 | bin/mysqld --initialize-insecure --user=mysql |
其中user
为执行mysqld
的用户
使用--initialize
同样配置好my.cnf
后
1 | bin/mysql --initalize --user=mysql |
这时mysql会为root用户生成一个随机的密码,并显示如下
1 | [Warning] A temporary password is generated for root@localhost: |
如果忘记了密码,可以使用init-file
参数启动mysqld,修改密码
1 | bin/mysqld --init-file /path/to/init/file |
init-file如下,其中{PASSWORD}修改为新密码:
1 | ALTER USER 'root'@'localhost' IDENTIFIED BY '{PASSWORD}'; |