步骤

方法1.家目录创建.my.cnf文件

mysql免密登录

[mysql]
user=root
password=123456

mysqldump免密登录

[mysqldump]
user=root
password=123456

方法2.设置环境变量

设置环境变量,mysql和mysqldump都可以免密登录

[root@localhost ~]# export MYSQL_PWD=123456

方法3.mysql_config_editor创建登录文件

mysql_config_editor可以创建一个指定用户的登录信息文件,实现免密登录,文件自带混淆加密,比其他两种方式更安全,同样适用于mysql和mysqldump

执行命令后,会在当前用户的家目录创建一个.mylogin.cnf文件,储存用户登录信息,自带混淆加密,可以用 mysql_config_editor print -- all命令 查看

命令

mysql_config_editor set --login-path=登录名称 --host=主机地址 --port=端口号 --user=用户名 --password
--login-path 登录名称可以随便起,免密登录的时候用这个登录名称登录

案例

1.创建登录信息并登录

[root@localhost ~]# mysql_config_editor set --login-path=login_root --host=localhost --port=3306 --user=root --password
Enter password: 
[root@localhost ~]# mysql --login-path=login_root
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 42
Server version: 5.7.26 MySQL Community Server (GPL)

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql>

2.查看登录信息文件

[root@localhost ~]# mysql_config_editor print --all
[login_root]
user = root
password = *****
host = localhost
port = 3306