mysql 5.7 开始使用 mysqld --initialize 初始化数据库

os: ubuntu 16.04
db: mysql 5.7.25

mysql_install_db is deprecated as of MySQL 5.7.6 because its functionality has been integrated into mysqld, the MySQL server. To initialize a MySQL installation, invoke mysqld with the --initialize or --initialize-insecure option. For more information, see Section 2.10.1, “Initializing the Data Directory”. mysql_install_db will be removed in a future MySQL release.

之前初始化mysql数据库命令 mysql_install_db 从MySQL 5.7.6 开始废弃,使用 mysqld 初始化数据库

mysqld

# which mysqld

# mysqld --verbose --help

  -I, --initialize    Create the default database and exit. Create a super user
                      with a random expired password and store it into the log.
  --initialize-insecure 
                      Create the default database and exit. Create a super user
                      with empty password.
                      

–initialize 会在日志里打印出一个随机密码。
–initialize-insecure 不会产生随机密码,第一次登陆数据库使用空密码。

# /usr/sbin/mysqld --defaults-file=/etc/mysql/my.cnf \
--basedir=/usr/local/mysql/ \
--datadir=/var/lib/mysql/ \
--user=mysql \
--initialize-insecure \
--ssl \
--explicit_defaults_for_timestamp \
--verbose

mysqld 执行初始化已添加 --ssl 时就不需要再执行,否则需要额外配置 ssl 下,

# /usr/bin/mysql_ssl_rsa_setup --datadir=/var/lib/mysql/ --verbose --uid=mysql

启动 mysql

# systemctl start mysql

使用 mysql 登录

# mysql -h 127.0.0.1 -P 3306 -u root -p
Enter password: 
mysql> alter user 'root'@'localhost' identified by 'rootroot';
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

参考:
https://dev.mysql.com/doc/refman/5.7/en/mysqld.html
https://dev.mysql.com/doc/refman/5.7/en/mysql-install-db.html
https://dev.mysql.com/doc/refman/5.7/en/mysql-secure-installation.html
https://dev.mysql.com/doc/refman/5.7/en/mysql-ssl-rsa-setup.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

数据库人生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值