五种不输入密码登录MySQL的方法,你知道几种?

数据库 MySQL
如果本地主机上的用户具有Linux登录名 yao​,并且使用 -uyao​ 选项调用套接字文件连接到MySQL,使用 auth_socket 验证插件可以通过对客户端的验证。

在对安全性要求不高的测试或开发环境中,每次登录MySQL数据库都需输入密码,可能会有点麻烦。在本文中,我们将探讨五种在不输入密码的情况下登录MySQL的方法,简化您的开发和测试任务。

1.使用环境变量

使用环境变量 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,发明两项计算机专利

2.使用配置文件

更新MySQL配置文件如下:

[client]
user=root
password=your_password

保存文件。将 your_password 替换为您的实际密码。然后您可以无需密码登录:

$ mysql

3.使用 mysql_config_editor

使用 mysql_config_editor 保存登录凭据:

$ mysql_config_editor set --login-path=yao --user=root --password

在提示时输入密码。然后您可以使用保存的凭据登录:

$ mysql --login-path=yao

4.使用 skip-grant-tables 启动MySQL

使用 skip-grant-tables 选项启动MySQL:

$ mysqld --skip-grant-tables --user=mysql &

然后您可以无需密码登录MySQL,或者无需提供正确的密码:

$ mysql -uroot -pwrongpassword

5.使用 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时输入密码。但是,请务必仅在安全环境中使用它们。

责任编辑:武晓燕 来源: 遥远的世界
相关推荐

2021-03-03 00:01:30

Redis数据结双向链表

2024-08-01 09:58:33

API性能机制

2024-04-24 11:24:43

C#数据去重

2020-11-16 09:15:07

MYSQL

2024-01-31 09:24:58

2019-09-02 11:14:08

隔离虚拟机操作系统

2014-12-17 09:27:41

开源PaaS

2022-02-14 22:04:50

浏览器Observer监听

2024-03-20 00:04:46

TypeScriptas const类型断言

2023-10-30 11:53:37

继承JS父类

2021-05-07 16:19:36

异步编程Java线程

2023-02-22 16:33:04

前端JavaScript

2011-08-30 15:11:21

密码SSH服务器

2018-02-08 09:04:58

Nginx404页面方法

2024-11-04 09:39:08

Java​接口Thread​类

2023-01-13 14:29:00

ESMySQL数据

2023-09-06 12:35:40

2021-08-05 07:28:25

Java实现方式

2017-02-06 18:00:26

Linuxsudo命令

2010-03-10 15:54:57

Linux根密码
点赞
收藏

51CTO技术栈公众号