当前位置: 首页 > 文档资料 > MySQL 中文手册 >

8.4. mysqlaccess:用于检查访问权限的客户端

优质
小牛编辑
132浏览
2023-12-01

mysqlaccess是Yves Carlier为MySQL分发提供的一个诊断工具。它检查访问权限的主机名、用户名和数据库组合。请注意 mysqlaccess检查只使用user、db和host表的访问。它不检查在tables_priv、columns_priv或procs_priv表中指定的表、列或者程序的权限。

调用mysqlaccess的方法:

shell> mysqlaccess [host_name [user_name [db_name]]] [options]

mysqlaccess理解下面的选项:

·---help,-?

显示帮助消息并退出。

·--brief,-b

生成单行表格式的报告。

·--commit

从临时表将新访问权限复制到原授权表。必须为新的权限刷新授权表以使其生效。(例如,执行mysqladmin RELOAD命令)。

·--copy

从原授权表重载临时授权表。

·--db=db_name,-ddb_name

指定数据库名。

·---debug=N

指定调试级别。N可以为从0到3的一个整数。

·--host=host_name,-hhost_name

在访问权限中使用的主机名。

·--howto

显示一些例子显示如何使用mysqlaccess

·--old_server

假定服务器是一个旧版本的MySQL服务器(MySQL 3.21之前),还不知道如何处理全WHERE子句。

·--password[=password],-p[password]

当连接服务器时使用的密码。如果你在命令行中在--password或-p选项后面省略密码值,将提示你输入密码。

·--plan

显示将来发布的建议和思想。

·--preview

更改临时授权表后显示权限的不同。

·--relnotes

显示发布注解。

·--rhost=host_name,-Hhost_name

连接给定主机的MySQL服务器。

·--rollback

取消对临时授权表的最新的更改。

·--spassword[=password],-P[password]

以super用户连接服务器时使用的密码。如果在命令行中在--password或-p选项后面省略了密码值,将提示你输入密码。

·--superuser=user_name,-Uuser_name

指定以super用户连接时的用户名。

·--tables,-t

生成表格式的报告。

·--user=user_name,-uuser_name

在访问权限中使用的主机名。

·--version,-v

显示版本信息并退出。

如果你的MySQL分发安装在某个非标准位置,必须进入mysqlaccess期望找到mysql客户的目录。编辑大约在18行处的mysqlaccess脚本。搜索类似下面的一行:

$MYSQL     = '/usr/local/bin/mysql';    # path to mysql executable

将路径更改为mysql实际在系统中保存的位置。如果不这样做,当运行mysqlaccess时会发生Broken pipe错误。