MySQL 5.6 Reference Manual Including MySQL NDB Cluster 7.3-7.4 Reference Guide
This utility is deprecated in MySQL 5.6.17 and removed in MySQL 5.7
mysqlaccess is a diagnostic tool that Yves
Carlier has provided for the MySQL distribution. It checks the
access privileges for a host name, user name, and database
combination. mysqlaccess checks access using
only the user
and db
tables. It does not check table, column, or routine privileges
specified in the tables_priv
,
columns_priv
, or
procs_priv
tables.
Invoke mysqlaccess like this:
shell> mysqlaccess [host_name
[user_name
[db_name
]]] [options
]
When mysqlaccess runs, it loads and executes
the contents of its configuration file,
mysqlaccess.conf
.
mysqlaccess looks for the configuration file
in these locations, in order:
The directory named by the
SYSCONFDIR
option to
CMake when MySQL was built. By default,
this is the etc
directory located under
the compiled-in installation directory.
The /etc
directory.
mysqlaccess supports the options shown in the following table.
Table 4.19 mysqlaccess Options
Option Name | Description |
---|---|
--brief | Generate reports in single-line tabular format |
--commit | Copy the new access privileges from the temporary tables to the original grant tables |
--copy | Reload the temporary grant tables from original ones |
--db | Specify the database name |
--debug | Specify the debug level |
--help | Display help message and exit |
--host | Host on which MySQL server is located |
--howto | Display some examples that show how to use mysqlaccess |
--old_server | Assume that the server is an old MySQL server (prior to MySQL 3.21) |
--password | Password to use when connecting to server |
--plan | Display suggestions and ideas for future releases |
--preview | Show the privilege differences after making changes to the temporary grant tables |
--relnotes | Display release notes |
--rhost | Host on which MySQL server is located |
--rollback | Undo the most recent changes to the temporary grant tables |
--spassword | Password to use when connecting to server as the superuser |
--superuser | Specify the user name for connecting as the superuser |
--table | Generate reports in table format |
--user | MySQL user name to use when connecting to server |
--version | Display version information and exit |
--help
,
-?
Display a help message and exit.
--brief
,
-b
Generate reports in single-line tabular format.
Copy the new access privileges from the temporary tables to the original grant tables. The grant tables must be flushed for the new privileges to take effect. (For example, execute a mysqladmin reload command.)
Reload the temporary grant tables from original ones.
--db=
,
db_name
-d
db_name
Specify the database name.
Specify the debug level. N
can be
an integer from 0 to 3.
This option is available only if MySQL was built using
WITH_DEBUG
. MySQL release
binaries provided by Oracle are not
built using this option.
--host=
,
host_name
-h
host_name
The host name to use in the access privileges.
Display some examples that show how to use mysqlaccess.
Assume that the server is an old MySQL server (before MySQL
3.21) that does not yet know how to handle full
WHERE
clauses.
--password[=
,
password
]-p[
password
]
The password to use when connecting to the server. If you
omit the password
value following
the --password
or
-p
option on the command line,
mysqlaccess prompts for one.
Specifying a password on the command line should be considered insecure. See Section 6.1.2.1, “End-User Guidelines for Password Security”.
Display suggestions and ideas for future releases.
Show the privilege differences after making changes to the temporary grant tables.
Display the release notes.
--rhost=
,
host_name
-H
host_name
Connect to the MySQL server on the given host.
Undo the most recent changes to the temporary grant tables.
--spassword[=
,
password
]-P[
password
]
The password to use when connecting to the server as the
superuser. If you omit the
password
value following the
--spassword
or
-p
option on the command line,
mysqlaccess prompts for one.
Specifying a password on the command line should be considered insecure. See Section 6.1.2.1, “End-User Guidelines for Password Security”.
--superuser=
,
user_name
-U
user_name
Specify the user name for connecting as the superuser.
--table
,
-t
Generate reports in table format.
--user=
,
user_name
-u
user_name
The user name to use in the access privileges.
--version
,
-v
Display version information and exit.
If your MySQL distribution is installed in some nonstandard
location, you must change the location where
mysqlaccess expects to find the
mysql client. Edit the
mysqlaccess
script at approximately line
18. Search for a line that looks like this:
$MYSQL = '/usr/local/bin/mysql'; # path to mysql executable
Change the path to reflect the location where
mysql actually is stored on your system. If
you do not do this, a Broken pipe
error
occurs when you run mysqlaccess.