mysqldump: [Warning] Using a password on the command line interface can be insecure.问题的解决

之前mysql版本是5.5的,自从升级到5.7后,之前自动备份的命令: /usr/local/mysql/bin/mysqldump -uroot -pmyServerPwd# dateabase > /data/mysql_bak/bak_test.sql 备份出来的SQL文件大小为0,一看就知道有问题了,经过上网搜索后,才发现,相对之前的mysql版本 mysql 5.7对安全性要求更高,所以之前的执行上面的备份命令,就会弹出如下警告:
mysqldump: [Warning] Using a password on the command line interface can be insecure.
正确的解决办法是共分2步:1.修改 my.cnf文件,2.修改备份命令。下面说下具体步骤:
1.在[client]节点(如果没有该节点请加上),在节点后面加上以下三行代码:

host = localhost
user =root
password ='test'

此处需要注意的地方有:1.localhost后面不能有空格;2.root后面不允许有空格出现,这两个地方有空格,执行备份命令时将会出错。完整版client节点代码如下:

[client]
port = 3306
socket = /tmp/mysql.sock
default-character-set = utf8mb4
host = localhost
user =root
password ='test'

保存后退出,重启mysql服务,
2.修改备份命令为(备份导出数据库):

/usr/local/mysql/bin/mysqldump --defaults-extra-file=/etc/my.cnf database > /data/mysql_bak/bak_test.sql    

相对应的是,导入数据库的命令也要作相应修改:

/usr/local/mysql/bin/mysql --defaults-extra-file=/etc/my.cnf database < test_db.sql         

可以看出,无论是导入还是导出都需要加载MYSQL配置文件

猜你喜欢

转载自blog.csdn.net/shenxiaomo1688/article/details/90757281
今日推荐