MySQL Utilities连接MySQL服务器教程

SEO探索者团队 SEO服务&网站优化

上一节教程我们讲了MySQL管理工具MySQL Utilities的介绍及安装,本教程我们来讲解如何通过MySQL Utilities或MySQL Utilities库方法连接到MySQL服务器.

连接参数:连接到一个服务器,必须指定连接参数,如用户名,主机名称,密码,端口号,socket,MySQL Utilities提供了三种提供这些参数的方法,这些方法都需要通过命令行指定.

使用.mylogin.cnf文件(加密的,不可见的),如:<login-path>[:<port>][:<socket>]

使用配置文件(未加密的,不可见的),只适用于1.5.0以上版本,如:<configuration-file-path>[:<section>]

在命令行指定(未加密的,可见的),如:<user>[:<passwd>]@<host>[:<port>][:<socket>]

使用login-paths(.mylogin.cnf)

使用该方法连接数据库是最好的,不仅是文件加密的,而且任何执行的记录不会暴露连接信息,因此,日志中用户名、密码、端口等信息是不可见的,这是使用MySQL Utilities工具连接数据库的首选方法.

注意:MySQL Utilities1.2.1以及以后版本支持login-paths方法.

连接的字符串格式为:login-path-name[:port][:socket],其中port、socket是可选的参数,如果指定,将覆盖login-path中定义的.

当使用login-paths时,除了Posix系统没有默认值,当指定套接字时。在这种情况下,host选项默认值是localhost。这就意味着,结合login-path指定值有两个可选值port和socket选择,至少需要指定一个用户名、一个主机名、一个port或一个socket。

使用mysql_config_editor工具添加如下连接信息,代码如下:

  1. #cd/usr/local/mysql5.6/
  2. #./bin/mysql_config_editorset--login-path=instance_3366--host=localhost--user=root--port=3366--password
  3. Enterpassword:

将会在家目录下创建一个隐藏的加密文件.mylogin.cnf,查看.mylogin.cnf 内容,代码如下:

  1. #./bin/mysql_config_editorprint--login-path=instance_3366
  2. [instance_3366]--phpfensi.com
  3. user=root
  4. password=*****
  5. host=localhost
  6. port=3366

一旦配置了.mylogin.cnf文件,就只需要指定.mylogin.cnf文件中的服务器段进行连接。如,在前面的示例中创建了“instance_3366”服务段,因此,我们可以使用–server=instance_3366。如下所示指定部分的登录路径:

# mysqlserverinfo --server=instance_3366 --format=vertical

也可以自定义,代码如下:

  1. #mysqlserverinfo--server=root:@localhost:3366:/tmp/mysql3366.sock--format=vertical
  2. WARNING:Usingapasswordonthecommandlineinterfacecanbeinsecure.
  3. #Sourceonlocalhost:...connected.
  4. *************************1.row*************************
  5. server:localhost:3366
  6. config_file:/usr/local/mysql5.6/my.cnf,./my.cnf
  7. binary_log:master-bin.000003
  8. binary_log_pos:151
  9. relay_log:
  10. relay_log_pos:
  11. version:5.6.16-log
  12. datadir:/usr/local/mysql5.6/data/
  13. basedir:/usr/local/mysql5.6
  14. plugin_dir:/usr/local/mysql5.6/lib/plugin/
  15. general_log:OFF--phpfensi.com
  16. general_log_file:
  17. general_log_file_size:
  18. log_error:/usr/local/mysql5.6/data/localhost.err
  19. log_error_file_size:2238bytes
  20. slow_query_log:OFF
  21. slow_query_log_file:
  22. slow_query_log_file_size:
  23. 1row.
  24. #...done.

使用配置文件

MySQL Utilities也可以接受服务器连接数据的配置路径和段,这就允许你存储的一个或多个部分的连接信息,将数据保存在配置文件中比在命令行指定安全,但是,该文件是个文本文件,只有能访问到该文件,任何人可读的,my.cnf连接段如下所示:

  1. #vimmy.cnf
  2. [client]
  3. port=3366
  4. socket=/tmp/mysql3366.sock
  5. user=root

使用配置文件,代码如下:

  1. #mysqlserverinfo--server=/usr/local/mysql5.6/my.cnf[client]--format=vertical
  2. #Sourceonlocalhost:...connected.
  3. *************************1.row*************************
  4. server:localhost:3366
  5. config_file:/usr/local/mysql5.6/my.cnf,./my.cnf
  6. binary_log:master-bin.000003
  7. binary_log_pos:151
  8. relay_log:
  9. relay_log_pos:
  10. version:5.6.16-log
  11. datadir:/usr/local/mysql5.6/data/
  12. basedir:/usr/local/mysql5.6
  13. plugin_dir:/usr/local/mysql5.6/lib/plugin/
  14. general_log:OFF
  15. general_log_file:
  16. general_log_file_size:
  17. log_error:/usr/local/mysql5.6/data/localhost.err
  18. log_error_file_size:2238bytes
  19. slow_query_log:OFF
  20. slow_query_log_file:
  21. slow_query_log_file_size:
  22. 1row.
  23. #...done.

使用命令行

通过命令行参数指定连接服务器信息,这种方式是最不安全的,数据在命令行可见,在日志文件中亦是可见的.

这种方式下,指定参数的顺序为:<user>[:<passwd>]@<host>[:<port>][:<socket>],方括号代表是可选的参数.

实例参见上面的.

在Python库中定义

如果使用MySQL Utilities库文件来创建自己的工具,你会遇到各种各样的连接方式.

可选的方法有:

一个含有连接参数的Python字典,一个含有连接参数的字符串,指定一个服务器实例.

字典格式如下:

  1. #Setconnectionvalues
  2. dest_values={
  3. "user":"root",
  4. "passwd":"secret",
  5. "host":"localhost",
  6. "port":3308,
  7. "unix_socket":None,
  8. }

字符串格式为:<user>[:<passwd>]@<host>[:<port>][:<socket>] 中括号是可选参数。

该连接字符串通过使用options.parse_connection函数进行解析,也可以指定服务器类的一个实例,在这种情况下,新类将复制这些连接信息.

相关广告
  • MySQL Utilities连接MySQL服务器教程 MySQL Utilities连接MySQL服务器教程 MySQL Utilities连接MySQL服务器教程
相关阅读

MySQL管理工具MySQL Utilities的介绍及安装教程

2019/10/10 17:32:23 | 谷歌SEO算法 | 微信公众号

MySQL Utilities连接MySQL服务器教程

2019/10/10 17:32:22 | 谷歌SEO算法 | 人工智能卓医