在对安全性要求不高的测试或开发环境中,每次登录MySQL数据库都需输入密码,可能会有点麻烦。在本文中,我们将探讨五种在不输入密码的情况下登录MySQL的方法,简化您的开发和测试任务。
01
—
使用环境变量
使用环境变量 MYSQL_PWD
指定连接到 mysqld
时的默认密码。下面的例子是使用 MYSQL_PWD
在不提供密码的情况下登录MySQL:
$ export MYSQL_PWD=your_password
$ mysql -uroot
将 your_password
替换为您的实际密码。
关于号主,姚远:
-
Oracle ACE(Oracle和MySQL数据库方向)
-
华为云最有价值专家
-
《MySQL 8.0运维与优化》的作者
-
拥有 Oracle 10g、12c和19c OCM等数十项数据库认证
-
曾任IBM公司数据库部门经理
-
20+年DBA经验,服务2万+客户
-
精通C和Java,发明两项计算机专利
02
—
使用配置文件
更新MySQL配置文件如下:
[client]
user=root
password=your_password
保存文件。将 your_password
替换为您的实际密码。然后您可以无需密码登录:
$ mysql
03
—
使用 mysql_config_editor
使用 mysql_config_editor
保存登录凭据:
$ mysql_config_editor set --login-path=yao --user=root --password
在提示时输入密码。然后您可以使用保存的凭据登录:
$ mysql --login-path=yao
04
—
使用 skip-grant-tables
启动MySQL
使用 skip-grant-tables
选项启动MySQL:
$ mysqld --skip-grant-tables --user=mysql &
然后您可以无需密码登录MySQL,或者无需提供正确的密码:
$ mysql -uroot -pwrongpassword
05
—
使用 auth_socket
插件
auth_socket
认证插件用于认证通过Unix套接字文件从localhost连接到MySQL服务器的客户端。该方法非常适合需要严格限制访问权限的服务器管理用户帐户。在MySQL中启用 auth_socket
插件:
mysql> INSTALL PLUGIN auth_socket SONAME 'auth_socket.so';
创建一个使用 auth_socket
插件的用户:
mysql> CREATE USER 'yao'@'localhost' IDENTIFIED WITH auth_socket;
用Linux用户身份验证无需密码登录MySQL:
$ sudo mysql -uyao
如果本地主机上的用户具有Linux登录名 yao
,并且使用 -uyao
选项调用套接字文件连接到MySQL,使用 auth_socket
验证插件可以通过对客户端的验证。这些方法可以简化您的开发和测试工作流程,无需每次登录MySQL时输入密码。但是,请务必仅在安全环境中使用它们。
欢迎关注我的公众号,一起学习数据库技术👇
欢迎加我的微信,拉你进数据库微信群👇
推荐文章👇
国外的程序员有35岁现象吗?
试看号主的拙作《MySQL 8.0运维与优化》(清华大学出版社)
托业890分的Oracle ACE为您翻译国际大佬的雄文(合集)
又考了一个Oracle优化的OCP,交一下作业