mysql中参数--init-file的作用是什么呢?

需求描述

  今天在修改测试环境mysql数据库中root用户密码的时候,用到了--init-file参数,

  所以,就在这里说下该参数的作用。

概念解释:

参数:--init-file=file_name

解释:这个参数的作用就是在启动mysql服务时,读取file_name中的SQL语句。

使用注意

--1)在文件file_name中,每个SQL语句,必须在单独的1行上。

--2)文件中不能包含注释。

1.将一条SQL放在2行中,测试是否正确执行

SET PASSWORD FOR 'root'@'localhost' = 
PASSWORD('mysql');

 

执行过程

[mysql@redhat6 data]$ mysqld --init-file=/mysql/data/mypass.txt &
[1] 3864
[mysql@redhat6 data]$ 180320 10:51:57 [Warning] The syntax '--log-slow-queries' is deprecated and will be removed in a future release. Please use '--slow-query-log'/'--slow-query-log-file' instead.
180320 10:51:57 [Note] --secure-file-priv is set to NULL. Operations related to importing and exporting data are disabled
180320 10:51:57 [Note] mysqld (mysqld 5.5.57-log) starting as process 3864 ...

[mysql@redhat6 data]$ 

 

测试,是否密码修改成功

[mysql@redhat6 data]$ mysql -uroot -p
Enter password: 
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

 

备注:密码没有修改成功。虽然,能够正确的启动mysql服务,也没有报错,但是,其中的SQL没有正确执行。

2.在file_name中,增加注释,看是否能够执行成功

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('mysql01'); --Mysql Change Root Password.

 

备注:通过--给该SQL加上注释。

通过--init-file执行修改密码的操作:

[mysql@redhat6 data]$ mysqld --init-file=/mysql/data/mypass.txt &
[1] 4014
[mysql@redhat6 data]$ 180320 10:57:37 [Warning] The syntax '--log-slow-queries' is deprecated and will be removed in a future release. Please use '--slow-query-log'/'--slow-query-log-file' instead.
180320 10:57:37 [Note] --secure-file-priv is set to NULL. Operations related to importing and exporting data are disabled
180320 10:57:37 [Note] mysqld (mysqld 5.5.57-log) starting as process 4014 ...

 

测试,root密码是否修改成功

[mysql@redhat6 data]$ mysql -uroot -p
Enter password: 
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

 

备注:加了注释之后,使用新的密码是不能够登录的。虽然,启动mysql服务是没有问题的。

 

文档创建时间:2018年3月20日10:59:34

转载于:https://www.cnblogs.com/chuanzhang053/p/8607994.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值