使用mysql_config_editor可以为特定的MySQL服务器或客户端程序设置登录路径
login_path 介绍
在 MySQL 中,login_path 通常不是 MySQL 服务器配置或 SQL 语句的一部分。但是,它经常与 MySQL 的命令行工具 mysql_config_editor 一起使用,这是一个允许用户安全地存储认证凭据(如用户名、密码和连接参数)的工具。
mysql 的 client 工具都能使用 login-path,如 mysql、mysqldump、mysqladmin、mysqlbinlog、mysql_upgrade、mysqld_safe、mysqld_multi、mysqldumpslow 等等。
mysql_config_editor 介绍
mysql_config_editor 是 MySQL 提供的一个实用程序,它允许用户安全地存储加密的认证凭据(如用户名、密码和服务器连接参数)在 ~/.mylogin.cnf 文件中。这样做的好处是,用户可以在不使用命令行参数或选项的情况下连接到 MySQL 服务器,同时避免在脚本或历史记录中暴露敏感信息。
mysql_config_editor 允许用户设置和管理登录路径(login paths),这些登录路径存储在用户主目录下的 ~/mylogin.cnf 文件中。使用登录路径,用户可以在命令行上无需输入用户名、密码或其他连接参数即可连接到 MySQL 服务器。
使用 mysql_config_editor
1、mysql_config_editor使用帮助
mysql_config_editor set --help
[root@orcl23c ~]# mysql_config_editor set --help
mysql_config_editor Ver 8.4.0 for Linux on x86_64 (MySQL Community Server - GPL)
Copyright (c) 2012, 2024, Oracle and/or its affiliates.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.MySQL Configuration Utility.Description: Write a login path to the login file.
Usage: mysql_config_editor [program options] [set [command options]]-?, --help Display this help and exit.-h, --host=name Host name to be entered into the login file.-G, --login-path=name Name of the login path to use in the login file. (Default: client)-p, --password Prompt for password to be entered into the login file.-u, --user=name User name to be entered into the login file.-S, --socket=name Socket path to be entered into login file.-P, --port=name Port number to be entered into login file.-w, --warn Warn and ask for confirmation if set command attempts tooverwrite an existing login path (enabled by default).(Defaults to on; use --skip-warn to disable.)Variables (--variable-name=value)
and boolean options {FALSE|TRUE} Value (after reading options)
--------------------------------- ----------------------------------------
host (No default value)
login-path client
user (No default value)
socket (No default value)
port (No default value)
warn TRUE
2、设置登录路径
使用 mysql_config_editor 可以为特定的 MySQL 服务器或客户端程序设置登录路径。登录路径是一个名称,它引用了一组认证凭据。
mysql_config_editor set --login-path=local --host=localhost --user=your_username --password
注意:your_username是你自己需设置的账号。当您输入上述命令时,它会提示您输入与 --user 参数关联的密码。
示例
[root@orcl23c ~]# mysql_config_editor set --login-path=local --host=localhost --user=root --password
Enter password: 提示您输入与 --user 参数关联的密码。
3、 使用登录路径
一旦设置了登录路径,您就可以使用 mysql 客户端(或其他 MySQL 客户端程序)并指定登录路径来连接到 MySQL 服务器。
[root@orcl23c ~]# mysql --login-path=local
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 16
Server version: 8.4.0 MySQL Community Server - GPLCopyright (c) 2000, 2024, Oracle and/or its affiliates.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.(root@localhost)[(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| db01 |
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
5 rows in set (0.01 sec)
或者,如果您正在使用其他客户端(如 mysqldump、mysqladmin、mysqlbinlog等),您也可以这样做。
4、查看存储的凭据
尽管您不应该直接编辑 ~/.mylogin.cnf 文件(因为它包含加密的数据),但您可以使用 mysql_config_editor 查看其中存储的登录路径列表。
[root@orcl23c ~]# mysql_config_editor print --login-path=local
[local]
user = "root"
password = *****
host = "localhost"
5、删除登录路径
如果您不再需要某个登录路径,可以使用以下命令删除它
mysql_config_editor remove --login-path=local
mysql_config_editor remove --login-path=local
6、注意
- 确保 ~/.mylogin.cnf 文件的权限设置得当,以便只有您自己可以读取它。
- 如果您丢失了与加密凭据关联的密码或密钥,则无法恢复它们。因此,请确保备份这些凭据或记住相关的密码。
- 在某些系统上,~/.mylogin.cnf 文件可能位于其他位置或具有不同的名称。但是,mysql_config_editor 默认会使用此位置。
7、综合示例
7.1、创建一个登陆用户
mysql -uroot -p -e "create user test@'%' identified by 'loginpath@2022';"
7.2、登陆路径设置
7.2.1、test用户设置登录路径
mysql_config_editor set --login-path=test --user=test --password --host=192.168.80.230 --port=3306
7.2.2、编辑环境变量增加alias
vi ~/.bash_profile
alias conn_test=“mysql --login-path=test”
source ~/.bash_profile
7.2.3、使用测试登录
[root@orcl23c ~]# conn_test -e "select user();"
+--------------+
| user() |
+--------------+
| test@orcl23c |
+--------------+
[root@orcl23c ~]# conn_test -e "\s"
--------------
mysql Ver 8.4.0 for Linux on x86_64 (MySQL Community Server - GPL)Connection id: 21
Current database:
Current user: test@orcl23c
SSL: Cipher in use is TLS_AES_128_GCM_SHA256
Current pager: stdout
Using outfile: ''
Using delimiter: ;
Server version: 8.4.0 MySQL Community Server - GPL
Protocol version: 10
Connection: 192.168.80.230 via TCP/IP
Server characterset: utf8mb4
Db characterset: utf8mb4
Client characterset: utf8mb4
Conn. characterset: utf8mb4
TCP port: 3306
Binary data as: Hexadecimal
Uptime: 12 days 21 hours 18 min 46 secThreads: 2 Questions: 84 Slow queries: 0 Opens: 237 Flush tables: 3 Open tables: 156 Queries per second avg: 0.000
--------------相关文章:
使用mysql_config_editor可以为特定的MySQL服务器或客户端程序设置登录路径
login_path 介绍 在 MySQL 中,login_path 通常不是 MySQL 服务器配置或 SQL 语句的一部分。但是,它经常与 MySQL 的命令行工具 mysql_config_editor 一起使用,这是一个允许用户安全地存储认证凭据(如用户名、密码和连接参数&…...
gridview的模板按钮如何判断用户点击的是哪一行
在asp.net的 GridView 控件中,判断用户点击的是哪一行通常可以通过处理 GridView 的 RowCommand 事件来实现。RowCommand 事件会在 GridView 的每个按钮(除非另有指定的CommandName)被点击时触发,并且事件参数中包含了足够的信息来…...
虚拟化 之三 详解 jailhouse(ARM 平台)的构建过程、配置及使用
嵌入式平台下,由于资源的限制,通常不具备通用性的 Linux 发行版,各大主流厂商都会提供自己的 Linux 发行版。这个发行版通常是基于某个 Linux 发行版构建系统来构建的,而不是全部手动构建,目前主流的 Linux 发行版构建系统是 Linux 基金会开发的 Yocto 构建系统。 基本环…...
数据安全:Web3时代的隐私保护新标准
随着数字化时代的到来,我们的生活已经完全依赖于互联网和数据交换。然而,随之而来的是对个人隐私和数据安全的日益关注。在这个信息爆炸的时代,数据泄露、个人隐私侵犯和网络攻击等问题日益突出,而Web3技术的崛起正带来了一种全新…...
STM32串口不定长接收空闲中断
目录 1. 开启串口空闲中断2. 合理开关中断3. 串口发送函数 1. 开启串口空闲中断 最近接触到的 Modbus RTU 项目使用到了串口接收中断和空闲中断。记录一下 初始化可以直接套用正点原子的初始化,只需要添加一行即可 USART_ITConfig(USART1, USART_IT_IDLE, ENABLE)…...
Ubuntu 设置开机启动脚本
在/etc/systemd/system/目录下创建对应的server服务 如:/etc/systemd/system/test-script.service [Unit] DescriptionTest Script Service Afternetwork.target[Service] Typeoneshot ExecStart/path/to/test-script.sh[Install] WantedBymulti-user.target替换/…...
C# Task 包含 await ConfigureAwait CancellationTokenSource
Task以下是 Task 类的一些关键特性和用法:以下是一些使用 Task 的示例:创建并启动一个任务使用 await 等待任务完成处理任务异常使用 Task<TResult> 获取结果取消任务总结 await暂停方法执行:非阻塞调用:任务结果获取&#…...
Python数据分析与建模库-02科学计算库Numpy01-05合集
1、该视频主要讲述了南派(NumPy)的核心操作和数据结构,以及如何使用NumPy库读取和处理数据。 2、该视频主要讲述了在编程中,如何对数组或矩阵中的元素进行判断和操作,以及在单排中如何进行类型转换。 3、该视频主要讲…...
【前端项目笔记】1 登录与登出功能实现
项目笔记 ☆☆代表面试常见题 前后端分离:后端负责写接口,前端负责调接口。 登录/退出功能 登录业务流程 登录页面:用户名密码 调用后台接口进行验证 通过验证,根据后台响应状态跳到项目主页 登录业务相关技术点࿱…...
是字符串定义以及在C语言中字符串是如何表示的
字符串(String)是由零个或多个字符(包括空格)组成的有限序列,常用于文本数据的存储和处理。在编程中,字符串是常见的数据类型。 在C语言中,字符串不是一种内置的数据类型,但C语言提…...
辽宁普通测径仪升级智能测径仪后都有哪些改进?
关键字: 普通测径仪, 智能测径仪, 测径仪升级, 测径仪特点, 智能测径仪优势, 目前多数厂家测径仪的数据处理方式是单片机计算出最终结果,然后传输到工控机后期处理。这样的电路系统对轧钢现场的高温、高粉尘和强电磁干扰的环境适应性很差,使得同一厂家、…...
【微信小程序】事件分类以及阻止事件冒泡
在微信小程序中,事件分为冒泡事件和非冒泡事件两大类,它们的区别在于事件是否能从原始触发组件开始,向父级组件传播(即“冒泡”)。 冒泡事件:当一个组件上的事件被触发后,不仅当前组件会接收到这…...
踩坑!被node-sass折磨的一天
文章目录 被node-sass折磨的一天折磨过程了解原因注意事项 被node-sass折磨的一天 折磨过程 起因是要开发一个老项目,照常拉代码、下依赖、启动三步走 依赖开始下载不对了,以为是node版本问题,寻找node-sass对应的node版本 利用nvm&#…...
App UI 风格打造独特体验
App UI 风格打造独特体验...
【学习笔记8】阅读StyleID论文源码
论文【链接】 源码【链接】 一、DDIM eta ddim_step表示执行几轮去噪迭代,eta表示DDPM和DDIM的插值系数。当eta0时,为DDPM;当eta≠0时,为DDIM。 参考 DDIM 简明讲解与 PyTorch 实现:加速扩散模型采样的通用方法 【s…...
wordpress旅游网站模板
旅行社wordpress主题 简洁实用的旅行社wordpress主题,适用于旅行社建网站的wordpress主题模板。 https://www.jianzhanpress.com/?p4296 旅游WordPress主题 简洁实用的旅游WordPress主题,适合做旅游公司网站的WordPress主题模板。 https://www.jian…...
vs2019 c++20规范 STL 库中头文件 <atomic> 源码注释及探讨几个知识点
(1 探讨一) 模板类 atomic 的继承关系与数据结构如下: (2 探讨二 ) 可见 atomic 的 fetch_xx 函数,返回的都是 atomic 中存储的旧值。测试如下: 谢谢...
Flink任务如何跑起来之 2.算子 StreamOperator
Flink任务如何跑起来之 2.算子 StreamOperator 前文介绍了Transformation创建过程,大多数情况下通过UDF完成DataStream转换中,生成的Transformation实例中,核心逻辑是封装了SimpleOperatorFactory实例。 UDF场景下,DataStream到…...
学习笔记——路由网络基础——路由优先级(preference)
1、路由优先级(preference) 路由优先级(preference)代表路由的优先程度。当路由器从多种不同的途径获知到达同一个目的网段的路由(这些路由的目的网络地址及网络掩码均相同)时,路由器会比较这些路由的优先级,优选优先级值最小的路由。 路由来源的优先…...
数据预处理——调整方差、标准化、归一化(Matlab、python)
对数据的预处理: (a)、调整数据的方差; (b)、标准化:将数据标准化为具有零均值和单位方差;(均值方差归一化(Standardization)) (c)、最值归一化,也称为离差标准化,是对原始数据的…...
别再死记硬背了!用Python脚本+Modbus Poll工具,5分钟搞懂Modbus功能码怎么用
用PythonModbus Poll实战:5分钟解锁功能码核心逻辑 第一次接触Modbus协议时,那些晦涩的功能码总让我头疼——01H、03H、05H这些十六进制代码就像天书,文档里的理论描述看完就忘。直到我发现用Python脚本配合Modbus Poll工具进行实操测试&…...
零基础快速入门前端DOM核心知识点详解与蓝桥杯Web赛道备考指南(可用于备赛蓝桥杯Web应用开发)
DOM(文档对象模型)是 HTML/XML 文档的编程接口,通过它可动态操作网页内容、结构与样式。本文将结合示例代码,系统讲解 DOM 核心知识点(重点补充事件系统全解),并针对蓝桥杯 Web 应用开发赛道给出…...
DIY电源改造必备:TL594与SG3524 PWM控制器实战对比(附电路图)
DIY电源改造实战:TL594与SG3524 PWM控制器深度对比与电路设计指南 1. 从零认识PWM控制器的核心价值 在电子爱好者的工作台上,电源改造项目总是充满魅力与挑战。无论是将旧电脑电源改造成可调实验室电源,还是为自制音响系统设计高效供电模块&a…...
终极解决方案:uesave-rs 让你轻松编辑虚幻引擎游戏存档
终极解决方案:uesave-rs 让你轻松编辑虚幻引擎游戏存档 【免费下载链接】uesave 项目地址: https://gitcode.com/gh_mirrors/ue/uesave 还在为游戏存档损坏而抓狂吗?面对一堆看不懂的二进制数据,想要修改游戏进度却无从下手ÿ…...
3步掌握PAGExporter:After Effects动画高效导出完整指南
3步掌握PAGExporter:After Effects动画高效导出完整指南 【免费下载链接】libpag The official rendering library for PAG (Portable Animated Graphics) files that renders After Effects animations natively across multiple platforms. 项目地址: https://g…...
AIGlasses_for_navigation免配置环境:预置ffmpeg+opencv+torchvision全栈
AIGlasses_for_navigation免配置环境:预置ffmpegopencvtorchvision全栈 1. 引言:让AI视觉开发变得简单 如果你曾经尝试过搭建一个完整的AI视觉处理环境,一定知道那是个多么痛苦的过程:安装CUDA、配置ffmpeg、编译OpenCV、处理各…...
2024年App上架全攻略:从软著申请到应用市场发布
1. 2024年App上架必备条件全解析 想在2024年把App成功上架到各大应用市场,开发者需要跨过几道硬性门槛。最近帮几个创业团队走完上架流程,发现很多新手容易在这些基础环节卡壳。先说最重要的三件套:软件著作权证书、App备案号、应用市场要求的…...
SVM支持向量机核函数选择避坑指南:从线性到RBF,如何根据你的数据特征做决定?
SVM核函数选择实战指南:从数据特征到模型调优的全流程解析 第一次在Scikit-learn中调用SVC类时,面对kernel参数下拉菜单里linear、poly、rbf、sigmoid四个选项,我盯着屏幕发了五分钟呆——这感觉就像走进一家高级餐厅,服务员递来一…...
Win11Debloat:终极Windows系统清理工具,一键提升电脑性能的完整指南
Win11Debloat:终极Windows系统清理工具,一键提升电脑性能的完整指南 【免费下载链接】Win11Debloat 一个简单的PowerShell脚本,用于从Windows中移除预装的无用软件,禁用遥测,从Windows搜索中移除Bing,以及执…...
3KW无线充电系统设计:开环控制与闭环控制的MATLAB Simulink仿真模型,采用双边L...
3KW无线充电系统设计(MATLAB simulink仿真模型) 控制方式:开环控制闭环控制 拓扑结构:双边LCC拓扑结构 输入电压:750V 输出电压:400V 传输功率:3KW 最近在折腾一个3KW无线充电系统的仿真项目&am…...
