此实用程序在 MySQL 5.6.17 中已弃用,并在 MySQL 5.7 中删除
mysqlaccess是 Yves Carlier 为 MySQL 发行版提供的诊断工具。它检查主机名、用户名和数据库组合的访问权限。mysqlaccessuser仅使用和db
表检查访问它不检查 、 或 表中指定的表、列或tables_priv例程
columns_priv权限
procs_priv。
像这样调用mysqlaccess:
mysqlaccess [host_name [user_name [db_name]]] [options]
当mysqlaccess运行时,它加载并执行其配置文件
mysqlaccess.conf.
mysqlaccess按顺序在这些位置查找配置文件:
构建MySQL时CMake
SYSCONFDIR的选项 命名的目录 。默认情况下,这是位于编译安装目录下的目录。etc/etc目录 。
mysqlaccess支持下表中显示的选项。
表 4.19 mysqlaccess 选项
| 选项名称 | 描述 |
|---|---|
| - 简短的 | 以单行表格格式生成报告 |
| - 犯罪 | 将新的访问权限从临时表复制到原始授权表 |
| - 复制 | 从原始授权表重新加载临时授权表 |
| - D b | 指定数据库名称 |
| --调试 | 指定调试级别 |
| - 帮助 | 显示帮助信息并退出 |
| - 主持人 | MySQL 服务器所在的主机 |
| - 如何 | 显示一些说明如何使用 mysqlaccess 的示例 |
| --old_server | 假设服务器是旧的 MySQL 服务器(MySQL 3.21 之前的版本) |
| - 密码 | 连接到服务器时使用的密码 |
| - 计划 | 显示对未来版本的建议和想法 |
| - 预习 | 显示更改临时授权表后的特权差异 |
| --relnotes | 显示发行说明 |
| --rhost | MySQL 服务器所在的主机 |
| --回滚 | 撤消对临时授权表的最新更改 |
| --密码 | 以超级用户身份连接到服务器时使用的密码 |
| --超级用户 | 指定以超级用户身份连接的用户名 |
| - 桌子 | 以表格格式生成报告 |
| - 用户 | 连接到服务器时使用的 MySQL 用户名 |
| - 版本 | 显示版本信息并退出 |
--help,-?显示帮助信息并退出。
--brief,-b以单行表格格式生成报告。
将新的访问权限从临时表复制到原始授权表。必须刷新授权表才能使新权限生效。(例如,执行mysqladmin 重新加载命令。)
从原始授权表重新加载临时授权表。
--db=,db_name-ddb_name指定数据库名称。
指定调试级别。
N可以是 0 到 3 之间的整数。仅当 MySQL 是使用
WITH_DEBUG. Oracle 提供的 MySQL 发布二进制文件不是 使用此选项构建的。--host=,host_name-hhost_name在访问权限中使用的主机名。
显示一些说明如何使用 mysqlaccess的示例。
假设该服务器是一个旧的 MySQL 服务器(MySQL 3.21 之前),它还不知道如何处理完整的
WHERE子句。--password[=,password]-p[password]连接到服务器时使用的密码。如果您在命令行中 省略或 选项后的
password值, mysqlaccess会提示输入一个。--password-p在命令行上指定密码应该被认为是不安全的。请参阅 第 6.1.2.1 节,“密码安全的最终用户指南”。
显示对未来版本的建议和想法。
显示更改临时授权表后的特权差异。
显示发行说明。
--rhost=,host_name-Hhost_name连接到给定主机上的 MySQL 服务器。
撤消对临时授权表的最新更改。
--spassword[=,password]-P[password]以超级用户身份连接到服务器时使用的密码。如果您 在命令行中 省略或 选项后的
password值 , mysqlaccess会提示输入一个。--spassword-p在命令行上指定密码应该被认为是不安全的。请参阅 第 6.1.2.1 节,“密码安全的最终用户指南”。
--superuser=,user_name-Uuser_name指定以超级用户身份连接的用户名。
--table,-t以表格格式生成报告。
--user=,user_name-uuser_name在访问权限中使用的用户名。
--version,-v显示版本信息并退出。
如果您的 MySQL 发行版安装在某个非标准位置,您必须更改
mysqlaccess期望找到
mysql客户端的位置。在大约第 18 行处编辑
mysqlaccess脚本。搜索如下所示的行:
$MYSQL = '/usr/local/bin/mysql'; # path to mysql executable
更改路径以反映
mysql在您的系统上实际存储的位置。如果不这样做,Broken pipe运行mysqlaccess时会发生错误。