[转帖]命令行非明文密码连接 TiDB

命令行,明文,密码,连接,tidb · 浏览次数 : 0

小编点评

```bash # MySQL configuration editor mysql_config_editor # Remove login path mysql_config_editor remove --login-path=test[root@iZuf6d7xln13sovvijl68rZ ~] # Print all configurations mysql_config_editor print --all # Set socket path mysql_config_editor set --socket=/tidb-deploy/tidb-3000/tidb.sock # Create database mysql_config_editor create --database=tidb-deploy # Start cluster mysql_config_editor start --cluster=tidb-prod # Restart cluster mysql_config_editor restart --cluster=tidb-prod # Show processlist mysql_config_editor show processlist ```

正文

https://tidb.net/blog/6794a34b#%E6%96%B9%E5%BC%8F%E4%B8%80%EF%BC%9A%E5%91%BD%E4%BB%A4%E8%A1%8C%E8%BE%93%E5%85%A5%E6%96%B9%E5%BC%8F

 

 

方式一:命令行输入方式

[root@iZuf6d7xln13sovvijl68rZ ~]# mysql -uroot -P4000 -h10.0.0.86

ERROR 1045 (28000): Access denied for user 'root'@'10.0.0.83' (using password: NO)

[root@iZuf6d7xln13sovvijl68rZ ~]# mysql -uroot -P4000 -h10.0.0.86 -p

Enter password:

Welcome to the MariaDB monitor.  Commands end with ; or \g.

Your MySQL connection id is 691323

Server version: 5.7.25-TiDB-v6.1.0-alpha TiDB Server (Apache License 2.0) Community Edition, MySQL 5.7 compatible



Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.



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



MySQL [(none)]>

正常方式下需要通过 -p 输入密码的方式连接 TiDB。

方式二:环境变量方式

[root@iZuf6d7xln13sovvijl68rZ ~]# export MYSQL_PWD=passw0RD

[root@iZuf6d7xln13sovvijl68rZ ~]# mysql -uroot -P4000 -h10.0.0.86

Welcome to the MariaDB monitor.  Commands end with ; or \g.

Your MySQL connection id is 691477

Server version: 5.7.25-TiDB-v6.1.0-alpha TiDB Server (Apache License 2.0) Community Edition, MySQL 5.7 compatible



Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.



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



MySQL [(none)]>

通过设定 MYSQL_PWD 环境变量方式,可以直接在命令行连接时传入密码,不需要指定 -p 选项。

取消 MYSQL_PWD 环境变量设置的步骤如下:

[root@iZuf6d7xln13sovvijl68rZ ~]# export MYSQL_PWD=

[root@iZuf6d7xln13sovvijl68rZ ~]# mysql -uroot -P4000 -h10.0.0.86

ERROR 1045 (28000): Access denied for user 'root'@'10.0.0.83' (using password: NO)

方式三:配置文件方式

在 /etc/my.cnf 配置下添加 [mysql] 对应的配置

[root@iZuf6d7xln13sovvijl68rZ ~]# head -n2 /etc/my.cnf

[mysql]

password=passw0RD

[root@iZuf6d7xln13sovvijl68rZ ~]# mysql -uroot -P4000 -h10.0.0.86

Welcome to the MariaDB monitor.  Commands end with ; or \g.

Your MySQL connection id is 691787

Server version: 5.7.25-TiDB-v6.1.0-alpha TiDB Server (Apache License 2.0) Community Edition, MySQL 5.7 compatible



Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.



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



MySQL [(none)]>

取消设置只需要将 my.cnf 中的配置文件删除即可。

方式四:mysql_config_editor 方式

[root@iZuf6d7xln13sovvijl68rZ ~]# ./mysql_config_editor print --all

[root@iZuf6d7xln13sovvijl68rZ ~]# ./mysql_config_editor set --login-path=test --user=root  --host=10.0.0.83 --port=3000 --password

Enter password:

[root@iZuf6d7xln13sovvijl68rZ ~]# ./mysql_config_editor print --all

[test]

user = root

password = *****

host = 10.0.0.83

port = 3000

[root@iZuf6d7xln13sovvijl68rZ ~]# cat /root/.mylogin.cnf

        ��2"�

�?��│�Ũ�ٹ    De����6ɡ⎽�_ �▒ȍ ;

         ]��┐�

↑ �/F?;d��J

⎻[⎼⎺⎺├@☃Z┤°6d7│┌┼13⎽⎺┴┴☃┘┌68⎼Z ·]#

[root@iZuf6d7xln13sovvijl68rZ ~]# ./mysql --login-path=test

Welcome to the MySQL monitor.  Commands end with ; or \g.

Your MySQL connection id is 753

Server version: 5.7.25-TiDB-v6.1.0-alpha TiDB Server (Apache License 2.0) Community Edition, MySQL 5.7 compatible



Copyright (c) 2000, 2022, 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.



mysql> \q

取消设置按照如下步骤:

[root@iZuf6d7xln13sovvijl68rZ ~]# ./mysql_config_editor remove --login-path=test

[root@iZuf6d7xln13sovvijl68rZ ~]# ./mysql_config_editor print --all

[root@iZuf6d7xln13sovvijl68rZ ~]#

方式五:Socket 方式连接

Socket 方式只能本地连接

[root@iZuf6d7xln13sovvijl68rZ scripts]# cd /tidb-deploy/tidb-3000/scripts

[root@iZuf6d7xln13sovvijl68rZ scripts]# cat run_tidb.sh

#!/bin/bash

set -e



# WARNING: This file was auto-generated. Do not edit!

#          All your edit might be overwritten!

DEPLOY_DIR=/tidb-deploy/tidb-3000



cd "${DEPLOY_DIR}" || exit 1

exec env GODEBUG=madvdontneed=1 bin/tidb-server \

    -P 3000 \

    --status="10080" \

    --host="0.0.0.0" \

    --advertise-address="10.0.0.83" \

    --store="tikv" \

    --initialize-insecure \

    --path="10.0.1.185:2379,10.0.2.29:2379,10.0.0.88:2379" \

    --log-slow-query="/tidb-deploy/tidb-3000/log/tidb_slow_query.log" \

    --config=conf/tidb.toml \

    --socket="/tidb-deploy/tidb-3000/tidb.sock" \

    --log-file="/tidb-deploy/tidb-3000/log/tidb.log" 2>> "/tidb-deploy/tidb-3000/log/tidb_stderr.log"

[root@iZuf6d7xln13sovvijl68rZ scripts]# tiup cluster restart tidb-prod -N 10.0.0.83:3000

[root@iZuf6d7xln13sovvijl68rZ scripts]# ps -ef | grep tidb-server

root     15153     1  4 17:25 ?        00:00:00 bin/tidb-server -P 3000 --status=10080 --host=0.0.0.0 --advertise-address=10.0.0.83 --store=tikv --initialize-insecure --path=10.0.1.185:2379,10.0.2.29:2379,10.0.0.88:2379 --log-slow-query=/tidb-deploy/tidb-3000/log/tidb_slow_query.log --config=conf/tidb.toml --socket=/tidb-deploy/tidb-3000/tidb.sock --log-file=/tidb-deploy/tidb-3000/log/tidb.log

root     15292 12885  0 17:26 pts/9    00:00:00 grep --color=auto tidb-server

[root@iZuf6d7xln13sovvijl68rZ scripts]# ll /tidb-deploy/tidb-3000/tidb.sock

srwxr-xr-x 1 root root 0 5月   5 17:25 /tidb-deploy/tidb-3000/tidb.sock

[root@iZuf6d7xln13sovvijl68rZ scripts]# mysql -uroot -hlocalhost -S /tidb-deploy/tidb-3000/tidb.sock

Welcome to the MariaDB monitor.  Commands end with ; or \g.

Your MySQL connection id is 403

Server version: 5.7.25-TiDB-v6.1.0-alpha TiDB Server (Apache License 2.0) Community Edition, MySQL 5.7 compatible



Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.



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



MySQL [(none)]> show processlist;

+------+------+-----------+------+---------+------+------------+------------------+

| Id   | User | Host      | db   | Command | Time | State      | Info             |

+------+------+-----------+------+---------+------+------------+------------------+

|  403 | root | localhost | NULL | Query   |    0 | autocommit | show processlist |

+------+------+-----------+------+---------+------+------------+------------------+

1 row in set (0.00 sec)

与[转帖]命令行非明文密码连接 TiDB相似的内容:

[转帖]命令行非明文密码连接 TiDB

https://tidb.net/blog/6794a34b#%E6%96%B9%E5%BC%8F%E4%B8%80%EF%BC%9A%E5%91%BD%E4%BB%A4%E8%A1%8C%E8%BE%93%E5%85%A5%E6%96%B9%E5%BC%8F 方式一:命令行输入方式 [root@i

[转帖]CPU性能监控之三-----非Numa架构的进程绑定

CPU性能监控之三 非Numa架构的进程绑定 https://blog.51cto.com/hl914/1557740 上一篇重点在Numa架构下如果绑定,这篇就说说在非numa架构下常用的绑定吧。 使用taskset这个命令进行绑定,这个命令无法对内存进行限制,所以,如果有特殊需要,也可以使用Nu

[转帖]Linux文本处理三剑客sed详解(正则匹配、命令示例)

https://developer.aliyun.com/article/885609?spm=a2c6h.24874632.expert-profile.312.7c46cfe9h5DxWK 简介: sed读一行放到模式空间进行处理 sed是一种在线的、非交互式的编辑器,它一次处理一行内容,处理时

[转帖]50个应知必会的Linux常识和操作

1.存放用户账号的文件在哪里? /etc/passwd 1 2.如何删除一个非空的目录? rm -rf 目录名 1 3.查看当前的工作目录用什么命令? pwd 1 4.创建一个文件夹用什么命令? mkdir 1 5.哪个Linux命令可以一次显示一页内容?上一页和下一页使用什么命令? more Sp

[转帖]Redis 性能优化的 13 条军规!史上最全

https://zhuanlan.zhihu.com/p/118532234 Redis性能优化实战方案 Redis 是基于单线程模型实现的,也就是 Redis 是使用一个线程来处理所有的客户端请求的,尽管 Redis 使用了非阻塞式 IO,并且对各种命令都做了优化(大部分命令操作时间复杂度都是 O

[转帖]《Linux性能优化实战》笔记(七)—— CPU瓶颈快速分析及性能优化思路

相当于是前面篇章的小结 一、 CPU 性能指标 常见指标包括: 平均负载CPU 使用率(user、iowait、system、软硬中断等)进程上下文切换(自愿、非自愿)CPU 缓存的命中率 CPU 的处理速度就比内存的访问速度快得多。这样,CPU 在访问内存的时候,免不了要等待内存的响应。为了协调这

[转帖]命令行安装kvm虚拟机、桥接网络、用virt-manager管理

https://www.shuzhiduo.com/A/Ae5RDQpNzQ/ 前进的code 2022-11-10 原文 宿主机CentOS Linux release 7.2.1511 (Core),内核3.10.0-327.el7.x86_64 1、配置宿主机网络桥接 想让虚拟机有自己的ip且

[转帖]命令行窗口下重复执行shell命令

1、命令操作录制和回放 #script -t 2> timing.log -a output.session # 开始录制 #scriptreplay timing.log output.session #回放 2、操作终端共享 通过管道来传输信息实现。需要一个pipe文件,并在需要展示的终端打开这

[转帖]ESXi命令行shell下最常用的命令

https://forum.huawei.com/enterprise/zh/thread/580931293695328256 services.sh – Linux服务通常使用services命令管理,管理ESXi服务是通过使用services.sh命令实现的。Services.sh命令支持的参

[转帖]linux命令行下如何格式化json并进行各种json处理操作

https://blog.csdn.net/penriver/article/details/122016563 有时需要在linux 的命令行下,需要查看json的内容或针对json进行各种操作,本文针对此进行梳理、总结。 在Linux系统下基于python json.tool可以格式化json,