美文网首页
mysql_config_editor-存储数据库连接信息的工具

mysql_config_editor-存储数据库连接信息的工具

作者: 月饮沙 | 来源:发表于2020-05-08 15:38 被阅读0次

    本文问题

    1. 用什么方法可以替代使用用户名密码登录数据库?
    2. login-path的构成是什么样的?
    3. 如何配置login-path
    4. 如何查看login-path?
    5. login-path的作用顺序?

    mysql_config_editor是一个用来存储数据库连接信息的工具。

    存放位置

    mysql_config_editor将密码信息存放在当前用户的home目录下的.mylog.cnf文件中.该文件是加密保存的。

    内容说明

    .mylog.cnf中,每个记录保存为一个选项组,每个选项组就是一个login-path。每个选项组中可以包括hostportuserpasswordsocket信息
    如:

    [client] #选项组名
    host=localhost
    user=root
    password=xxxxxx
    

    使用方法

    mysql --login-path=client
    注意:

    • client是默认的login-path,即使不指定也会读取其中的内容
    • 后读取到的内容会替换到先读取的内容。比如:
    [client]
    host = localhost
    user = root
    password = *****
    [remote]
    host = 192.168.1.1
    port = 5722
    

    则:
    mysql --login-path=remote
    等同于
    mysql --host=192.168.1.1 --port=5722 --user=root --password=xxxxxx

    虽然用户名和密码在remote里面没有指定,但是因为在client中指定了,所以MySQL也会读取到这两个信息。

    配置方法

    通过mysql_config_editor可以配置login-path,具体方法如下:

    增加login-path

    mysql_config_editor set --login-path=name --user=root --host=localhost --port=3306 --password
    注意这里password不能直接=value,而是需要命令执行后在交互界面进行输入

    删除login-path

    删除执行login-path中的一个选项

    mysql_config_editor remove --login-path=name --user

    删除指定login-path

    mysql_config_editor remove --login-path=name

    删除所有login-path

    mysql_config_editor reset

    查看login-path

    查看所有login-path

    mysql_config_editor print --all
    在输出中,密码会以"******"代替。

    查看指定login-path

    mysql_config_editor print --login-path=name

    问题答案

    1. 用什么方法可以替代使用用户名密码登录数据库?
      使用--login-path替代用户名和密码,--login-path可以使用mysql_config_editor进行配置和查看,记录保存在当前用户home目录的.mylog.cnf文件中,该文件是加密的,不能明文查看和修改。--login-path只对设置它的用户有效。
    2. login-path的构成是什么样的?
    [client]  #选项组名
    host = localhost
    port = 3306
    user = root
    password = *****
    socket = /tmp/mysql.sock
    
    1. 如何配置login-path
    # 添加login-path
    mysql_config_editor set --login-path=name --user=root --host=localhost --port=3306 --password 
    # 删除login-path
    # 删除所有
    mysql_config_editor reset
    # 删除指定选项组
    mysql_config_editor remove --login-path=name
    # 删除指定选项组中的某个选项
    mysql_config_editor remove --login-path=name --user
    
    1. 如何查看login-path?
    # 查看所有
    mysql_config_editor print --all 
    # 查看指定选项组
    mysql_config_editor print --login-path=name
    
    1. login-path的作用顺序?
      如果没有指定--login-path,默认读取[client]选项组。如果指定了--login-path=name,会读取[client][name]选项组,[name]组中指定的选项覆盖[client]选项组中的选项

    相关文章

      网友评论

          本文标题:mysql_config_editor-存储数据库连接信息的工具

          本文链接:https://www.haomeiwen.com/subject/qsuoghtx.html