<div id="docs-body">
 <div class="section">
  <div class="titlepage">
   <div>
    <div>
     <h3 class="title">
      <a name="mysql-config-editor">
      </a>
      6.6.7 mysql_config_editor — MySQL Configuration Utility
     </h3>
    </div>
   </div>
  </div>
  <a class="indexterm" name="idm46045306204608">
  </a>
  <a class="indexterm" name="idm46045306203696">
  </a>
  <a class="indexterm" name="idm46045306202736">
  </a>
  <p>
   The
   <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
    <span class="command">
     <strong>
      mysql_config_editor
     </strong>
    </span>
   </a>
   utility enables you
        to store authentication credentials in an obfuscated login path
        file named
   <code class="filename">
    .mylogin.cnf
   </code>
   . The file location
        is the
   <code class="filename">
    %APPDATA%\MySQL
   </code>
   directory on Windows
        and the current user's home directory on non-Windows systems.
        The file can be read later by MySQL client programs to obtain
        authentication credentials for connecting to MySQL Server.
  </p>
  <p>
   The unobfuscated format of the
   <code class="filename">
    .mylogin.cnf
   </code>
   login path file consists of option groups, similar to other
        option files. Each option group in
   <code class="filename">
    .mylogin.cnf
   </code>
   is called a
   <span class="quote">
    “
    <span class="quote">
     login
        path,
    </span>
    ”
   </span>
   which is a group that permits only certain
        options:
   <code class="option">
    host
   </code>
   ,
   <code class="option">
    user
   </code>
   ,
   <code class="option">
    password
   </code>
   ,
   <code class="option">
    port
   </code>
   and
   <code class="option">
    socket
   </code>
   . Think of a login path option group as a
        set of options that specify which MySQL server to connect to and
        which account to authenticate as. Here is an unobfuscated
        example:
  </p>
  <div class="copytoclipboard-wrapper">
   <pre class="programlisting language-ini"><div class="docs-select-all right" id="sa21735192"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-ini"><span class="token selector">[client]</span>
<span class="token constant">user</span> <span class="token attr-value"><span class="token punctuation">=</span> mydefaultname</span>
<span class="token constant">password</span> <span class="token attr-value"><span class="token punctuation">=</span> mydefaultpass</span>
<span class="token constant">host</span> <span class="token attr-value"><span class="token punctuation">=</span> 127.0.0.1</span>
<span class="token selector">[mypath]</span>
<span class="token constant">user</span> <span class="token attr-value"><span class="token punctuation">=</span> myothername</span>
<span class="token constant">password</span> <span class="token attr-value"><span class="token punctuation">=</span> myotherpass</span>
<span class="token constant">host</span> <span class="token attr-value"><span class="token punctuation">=</span> localhost</span></code></pre>
  </div>
  <p>
   When you invoke a client program to connect to the server, the
        client uses
   <code class="filename">
    .mylogin.cnf
   </code>
   in conjunction
        with other option files. Its precedence is higher than other
        option files, but less than options specified explicitly on the
        client command line. For information about the order in which
        option files are used, see
   <a class="xref" href="option-files.html" title="6.2.2.2 Using Option Files">
    Section 6.2.2.2, “Using Option Files”
   </a>
   .
  </p>
  <a class="indexterm" name="idm46045306189776">
  </a>
  <a class="indexterm" name="idm46045306188672">
  </a>
  <p>
   To specify an alternate login path file name, set the
   <code class="literal">
    MYSQL_TEST_LOGIN_FILE
   </code>
   environment variable.
        This variable is recognized by
   <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
    <span class="command">
     <strong>
      mysql_config_editor
     </strong>
    </span>
   </a>
   , by standard MySQL
        clients (
   <a class="link" href="mysql.html" title="6.5.1 mysql — The MySQL Command-Line Client">
    <span class="command">
     <strong>
      mysql
     </strong>
    </span>
   </a>
   ,
   <a class="link" href="mysqladmin.html" title="6.5.2 mysqladmin — A MySQL Server Administration Program">
    <span class="command">
     <strong>
      mysqladmin
     </strong>
    </span>
   </a>
   , and so forth), and by the
   <span class="command">
    <strong>
     mysql-test-run.pl
    </strong>
   </span>
   testing utility.
  </p>
  <p>
   Programs use groups in the login path file as follows:
  </p>
  <div class="itemizedlist">
   <ul class="itemizedlist" style="list-style-type: disc; ">
    <li class="listitem">
     <p>
      <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
       <span class="command">
        <strong>
         mysql_config_editor
        </strong>
       </span>
      </a>
      operates on the
      <code class="literal">
       client
      </code>
      login path by default if you
            specify no
      <a class="link" href="option-file-options.html#option_general_login-path">
       <code class="option">
        --login-path=
        <em class="replaceable">
         <code>
          name
         </code>
        </em>
       </code>
      </a>
      option to indicate explicitly which login path to use.
     </p>
    </li>
    <li class="listitem">
     <p>
      Without a
      <a class="link" href="option-file-options.html#option_general_login-path">
       <code class="option">
        --login-path
       </code>
      </a>
      option, client programs read the same option groups from the
            login path file that they read from other option files.
            Consider this command:
     </p>
     <div class="copytoclipboard-wrapper">
      <pre class="programlisting one-line language-terminal"><div class="docs-select-all right" id="sa36520357"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-terminal">mysql</code></pre>
     </div>
     <p>
      By default, the
      <a class="link" href="mysql.html" title="6.5.1 mysql — The MySQL Command-Line Client">
       <span class="command">
        <strong>
         mysql
        </strong>
       </span>
      </a>
      client reads the
      <code class="literal">
       [client]
      </code>
      and
      <code class="literal">
       [mysql]
      </code>
      groups from other option files, so it reads them from the
            login path file as well.
     </p>
    </li>
    <li class="listitem">
     <p>
      With a
      <a class="link" href="option-file-options.html#option_general_login-path">
       <code class="option">
        --login-path
       </code>
      </a>
      option,
            client programs additionally read the named login path from
            the login path file. The option groups read from other
            option files remain the same. Consider this command:
     </p>
     <div class="copytoclipboard-wrapper">
      <pre class="programlisting one-line language-terminal"><div class="docs-select-all right" id="sa82327971"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-terminal">mysql <span class="token constant">--login-path</span><span class="token attr-value"><span class="token punctuation">=</span>mypath</span></code></pre>
     </div>
     <p>
      The
      <a class="link" href="mysql.html" title="6.5.1 mysql — The MySQL Command-Line Client">
       <span class="command">
        <strong>
         mysql
        </strong>
       </span>
      </a>
      client reads
      <code class="literal">
       [client]
      </code>
      and
      <code class="literal">
       [mysql]
      </code>
      from other option files, and
      <code class="literal">
       [client]
      </code>
      ,
      <code class="literal">
       [mysql]
      </code>
      , and
      <code class="literal">
       [mypath]
      </code>
      from the login path file.
     </p>
    </li>
    <li class="listitem">
     <p>
      Client programs read the login path file even when the
      <a class="link" href="option-file-options.html#option_general_no-defaults">
       <code class="option">
        --no-defaults
       </code>
      </a>
      option is
            used, unless
      <a class="link" href="option-file-options.html#option_general_no-login-paths">
       <code class="option">
        --no-login-paths
       </code>
      </a>
      is set.
            This permits passwords to be specified in a safer way than
            on the command line even if
      <a class="link" href="option-file-options.html#option_general_no-defaults">
       <code class="option">
        --no-defaults
       </code>
      </a>
      is present.
     </p>
    </li>
   </ul>
  </div>
  <p>
   <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
    <span class="command">
     <strong>
      mysql_config_editor
     </strong>
    </span>
   </a>
   obfuscates the
   <code class="filename">
    .mylogin.cnf
   </code>
   file so it cannot be read as
        cleartext, and its contents when unobfuscated by client programs
        are used only in memory. In this way, passwords can be stored in
        a file in non-cleartext format and used later without ever
        needing to be exposed on the command line or in an environment
        variable.
   <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
    <span class="command">
     <strong>
      mysql_config_editor
     </strong>
    </span>
   </a>
   provides a
   <code class="literal">
    print
   </code>
   command for displaying the login path
        file contents, but even in this case, password values are masked
        so as never to appear in a way that other users can see them.
  </p>
  <p>
   The obfuscation used by
   <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
    <span class="command">
     <strong>
      mysql_config_editor
     </strong>
    </span>
   </a>
   prevents passwords from appearing in
   <code class="filename">
    .mylogin.cnf
   </code>
   as cleartext and provides a
        measure of security by preventing inadvertent password exposure.
        For example, if you display a regular unobfuscated
   <code class="filename">
    my.cnf
   </code>
   option file on the screen, any
        passwords it contains are visible for anyone to see. With
   <code class="filename">
    .mylogin.cnf
   </code>
   , that is not true, but the
        obfuscation used is not likely to deter a determined attacker
        and you should not consider it unbreakable. A user who can gain
        system administration privileges on your machine to access your
        files could unobfuscate the
   <code class="filename">
    .mylogin.cnf
   </code>
   file with some effort.
  </p>
  <p>
   The login path file must be readable and writable to the current
        user, and inaccessible to other users. Otherwise,
   <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
    <span class="command">
     <strong>
      mysql_config_editor
     </strong>
    </span>
   </a>
   ignores it, and client
        programs do not use it, either.
  </p>
  <p>
   Invoke
   <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
    <span class="command">
     <strong>
      mysql_config_editor
     </strong>
    </span>
   </a>
   like this:
  </p>
  <div class="copytoclipboard-wrapper">
   <pre class="programlisting one-line language-terminal"><div class="docs-select-all right" id="sa77305094"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-terminal">mysql_config_editor <span class="token punctuation">[</span><em class="replaceable">program_options</em><span class="token punctuation">]</span> <em class="replaceable">command</em> <span class="token punctuation">[</span><em class="replaceable">command_options</em><span class="token punctuation">]</span></code></pre>
  </div>
  <p>
   If the login path file does not exist,
   <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
    <span class="command">
     <strong>
      mysql_config_editor
     </strong>
    </span>
   </a>
   creates it.
  </p>
  <p>
   Command arguments are given as follows:
  </p>
  <div class="itemizedlist">
   <ul class="itemizedlist" style="list-style-type: disc; ">
    <li class="listitem">
     <p>
      <em class="replaceable">
       <code>
        program_options
       </code>
      </em>
      consists of
            general
      <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
       <span class="command">
        <strong>
         mysql_config_editor
        </strong>
       </span>
      </a>
      options.
     </p>
    </li>
    <li class="listitem">
     <p>
      <code class="literal">
       command
      </code>
      indicates what action to perform
            on the
      <code class="filename">
       .mylogin.cnf
      </code>
      login path file.
            For example,
      <code class="literal">
       set
      </code>
      writes a login path to
            the file,
      <code class="literal">
       remove
      </code>
      removes a login path,
            and
      <code class="literal">
       print
      </code>
      displays login path contents.
     </p>
    </li>
    <li class="listitem">
     <p>
      <em class="replaceable">
       <code>
        command_options
       </code>
      </em>
      indicates any
            additional options specific to the command, such as the
            login path name and the values to use in the login path.
     </p>
    </li>
   </ul>
  </div>
  <p>
   The position of the command name within the set of program
        arguments is significant. For example, these command lines have
        the same arguments, but produce different results:
  </p>
  <div class="copytoclipboard-wrapper">
   <pre class="programlisting language-terminal"><div class="docs-select-all right" id="sa58136124"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-terminal">mysql_config_editor <span class="token property">--help</span> set
mysql_config_editor set <span class="token property">--help</span></code></pre>
  </div>
  <p>
   The first command line displays a general
   <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
    <span class="command">
     <strong>
      mysql_config_editor
     </strong>
    </span>
   </a>
   help message, and ignores
        the
   <code class="literal">
    set
   </code>
   command. The second command line
        displays a help message specific to the
   <code class="literal">
    set
   </code>
   command.
  </p>
  <p>
   Suppose that you want to establish a
   <code class="literal">
    client
   </code>
   login path that defines your default connection parameters, and
        an additional login path named
   <code class="literal">
    remote
   </code>
   for
        connecting to the MySQL server the host
   <code class="literal">
    remote.example.com
   </code>
   . You want to log in as
        follows:
  </p>
  <div class="itemizedlist">
   <ul class="itemizedlist" style="list-style-type: disc; ">
    <li class="listitem">
     <p>
      By default, to the local server with a user name and
            password of
      <code class="literal">
       localuser
      </code>
      and
      <code class="literal">
       localpass
      </code>
     </p>
    </li>
    <li class="listitem">
     <p>
      To the remote server with a user name and password of
      <code class="literal">
       remoteuser
      </code>
      and
      <code class="literal">
       remotepass
      </code>
     </p>
    </li>
   </ul>
  </div>
  <p>
   To set up the login paths in the
   <code class="filename">
    .mylogin.cnf
   </code>
   file, use the following
   <code class="literal">
    set
   </code>
   commands. Enter each command on a single
        line, and enter the appropriate passwords when prompted:
  </p>
  <div class="copytoclipboard-wrapper">
   <pre class="programlisting language-terminal"><div class="docs-select-all right" id="sa47505548"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-terminal"><span class="token prompt">$&gt; </span><span class="token command">mysql_config_editor</span> set <span class="token constant">--login-path</span><span class="token attr-value"><span class="token punctuation">=</span>client</span>
         <span class="token constant">--host</span><span class="token attr-value"><span class="token punctuation">=</span>localhost</span> <span class="token constant">--user</span><span class="token attr-value"><span class="token punctuation">=</span>localuser</span> <span class="token property">--password</span>
Enter password<span class="token punctuation">:</span> <em class="replaceable">enter password <span class="token atrule">"localpass"</span> here</em>
<span class="token prompt">$&gt; </span><span class="token command">mysql_config_editor</span> set <span class="token constant">--login-path</span><span class="token attr-value"><span class="token punctuation">=</span>remote</span>
         <span class="token constant">--host</span><span class="token attr-value"><span class="token punctuation">=</span>remote.example.com</span> <span class="token constant">--user</span><span class="token attr-value"><span class="token punctuation">=</span>remoteuser</span> <span class="token property">--password</span>
Enter password<span class="token punctuation">:</span> <em class="replaceable">enter password <span class="token atrule">"remotepass"</span> here</em></code></pre>
  </div>
  <p>
   <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
    <span class="command">
     <strong>
      mysql_config_editor
     </strong>
    </span>
   </a>
   uses the
   <code class="literal">
    client
   </code>
   login path by default, so the
   <code class="option">
    --login-path=client
   </code>
   option can be omitted from
        the first command without changing its effect.
  </p>
  <p>
   To see what
   <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
    <span class="command">
     <strong>
      mysql_config_editor
     </strong>
    </span>
   </a>
   writes to the
   <code class="filename">
    .mylogin.cnf
   </code>
   file, use the
   <code class="literal">
    print
   </code>
   command:
  </p>
  <div class="copytoclipboard-wrapper">
   <pre class="programlisting language-terminal"><div class="docs-select-all right" id="sa31068297"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-terminal"><span class="token prompt">$&gt; </span><span class="token command">mysql_config_editor</span> print <span class="token property">--all</span>
<span class="token punctuation">[</span>client<span class="token punctuation">]</span>
user = localuser
password = *****
host = localhost
<span class="token punctuation">[</span>remote<span class="token punctuation">]</span>
user = remoteuser
password = *****
host = remote<span class="token punctuation">.</span>example<span class="token punctuation">.</span>com</code></pre>
  </div>
  <p>
   The
   <code class="literal">
    print
   </code>
   command displays each login path as
        a set of lines beginning with a group header indicating the
        login path name in square brackets, followed by the option
        values for the login path. Password values are masked and do not
        appear as cleartext.
  </p>
  <p>
   If you do not specify
   <code class="option">
    --all
   </code>
   to display all
        login paths or
   <code class="option">
    --login-path=
    <em class="replaceable">
     <code>
      name
     </code>
    </em>
   </code>
   to
        display a named login path, the
   <code class="literal">
    print
   </code>
   command
        displays the
   <code class="literal">
    client
   </code>
   login path by default, if
        there is one.
  </p>
  <p>
   As shown by the preceding example, the login path file can
        contain multiple login paths. In this way,
   <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
    <span class="command">
     <strong>
      mysql_config_editor
     </strong>
    </span>
   </a>
   makes it easy to set up
        multiple
   <span class="quote">
    “
    <span class="quote">
     personalities
    </span>
    ”
   </span>
   for connecting to
        different MySQL servers, or for connecting to a given server
        using different accounts. Any of these can be selected by name
        later using the
   <code class="option">
    --login-path
   </code>
   option when you
        invoke a client program. For example, to connect to the remote
        server, use this command:
  </p>
  <div class="copytoclipboard-wrapper">
   <pre class="programlisting one-line language-terminal"><div class="docs-select-all right" id="sa82962500"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-terminal">mysql <span class="token constant">--login-path</span><span class="token attr-value"><span class="token punctuation">=</span>remote</span></code></pre>
  </div>
  <p>
   Here,
   <a class="link" href="mysql.html" title="6.5.1 mysql — The MySQL Command-Line Client">
    <span class="command">
     <strong>
      mysql
     </strong>
    </span>
   </a>
   reads the
   <code class="literal">
    [client]
   </code>
   and
   <code class="literal">
    [mysql]
   </code>
   option groups from other option files, and the
   <code class="literal">
    [client]
   </code>
   ,
   <code class="literal">
    [mysql]
   </code>
   , and
   <code class="literal">
    [remote]
   </code>
   groups from the login path file.
  </p>
  <p>
   To connect to the local server, use this command:
  </p>
  <div class="copytoclipboard-wrapper">
   <pre class="programlisting one-line language-terminal"><div class="docs-select-all right" id="sa46653020"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-terminal">mysql <span class="token constant">--login-path</span><span class="token attr-value"><span class="token punctuation">=</span>client</span></code></pre>
  </div>
  <p>
   Because
   <a class="link" href="mysql.html" title="6.5.1 mysql — The MySQL Command-Line Client">
    <span class="command">
     <strong>
      mysql
     </strong>
    </span>
   </a>
   reads the
   <code class="literal">
    client
   </code>
   and
   <code class="literal">
    mysql
   </code>
   login
        paths by default, the
   <a class="link" href="option-file-options.html#option_general_login-path">
    <code class="option">
     --login-path
    </code>
   </a>
   option does not add
        anything in this case. That command is equivalent to this one:
  </p>
  <div class="copytoclipboard-wrapper">
   <pre class="programlisting one-line language-terminal"><div class="docs-select-all right" id="sa35614824"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-terminal">mysql</code></pre>
  </div>
  <p>
   Options read from the login path file take precedence over
        options read from other option files. Options read from login
        path groups appearing later in the login path file take
        precedence over options read from groups appearing earlier in
        the file.
  </p>
  <p>
   <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
    <span class="command">
     <strong>
      mysql_config_editor
     </strong>
    </span>
   </a>
   adds login paths to the
        login path file in the order you create them, so you should
        create more general login paths first and more specific paths
        later. If you need to move a login path within the file, you can
        remove it, then recreate it to add it to the end. For example, a
   <code class="literal">
    client
   </code>
   login path is more general because it
        is read by all client programs, whereas a
   <code class="literal">
    mysqldump
   </code>
   login path is read only by
   <a class="link" href="mysqldump.html" title="6.5.4 mysqldump — A Database Backup Program">
    <span class="command">
     <strong>
      mysqldump
     </strong>
    </span>
   </a>
   . Options specified later override
        options specified earlier, so putting the login paths in the
        order
   <code class="literal">
    client
   </code>
   ,
   <code class="literal">
    mysqldump
   </code>
   enables
   <a class="link" href="mysqldump.html" title="6.5.4 mysqldump — A Database Backup Program">
    <span class="command">
     <strong>
      mysqldump
     </strong>
    </span>
   </a>
   -specific options to
        override
   <code class="literal">
    client
   </code>
   options.
  </p>
  <p>
   When you use the
   <code class="literal">
    set
   </code>
   command with
   <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
    <span class="command">
     <strong>
      mysql_config_editor
     </strong>
    </span>
   </a>
   to create a login path,
        you need not specify all possible option values (host name, user
        name, password, port, socket). Only those values given are
        written to the path. Any missing values required later can be
        specified when you invoke a client path to connect to the MySQL
        server, either in other option files or on the command line. Any
        options specified on the command line override those specified
        in the login path file or other option files. For example, if
        the credentials in the
   <code class="literal">
    remote
   </code>
   login path also
        apply for the host
   <code class="literal">
    remote2.example.com
   </code>
   ,
        connect to the server on that host like this:
  </p>
  <div class="copytoclipboard-wrapper">
   <pre class="programlisting one-line language-terminal"><div class="docs-select-all right" id="sa97716831"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-terminal">mysql <span class="token constant">--login-path</span><span class="token attr-value"><span class="token punctuation">=</span>remote</span> <span class="token constant">--host</span><span class="token attr-value"><span class="token punctuation">=</span>remote2.example.com</span></code></pre>
  </div>
  <h4>
   <a name="mysql-config-editor-command-options">
   </a>
   mysql_config_editor General Options
  </h4>
  <p>
   <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
    <span class="command">
     <strong>
      mysql_config_editor
     </strong>
    </span>
   </a>
   supports the following
        general options, which may be used preceding any command named
        on the command line. For descriptions of command-specific
        options, see
   <a class="xref" href="mysql-config-editor.html#mysql-config-editor-commands" title="mysql_config_editor Commands and Command-Specific Options">
    mysql_config_editor Commands and Command-Specific Options
   </a>
   .
  </p>
  <div class="table">
   <a name="idm46045306067328">
   </a>
   <p class="title">
    <b>
     Table 6.18 mysql_config_editor General Options
    </b>
   </p>
   <div class="table-contents">
    <table frame="box" rules="all" summary="General Command-line options available for mysql_config_editor.">
     <colgroup>
      <col style="width: 35%"/>
      <col style="width: 64%"/>
     </colgroup>
     <thead>
      <tr>
       <th>
        Option Name
       </th>
       <th>
        Description
       </th>
      </tr>
     </thead>
     <tbody>
      <tr>
       <td>
        <a class="link" href="mysql-config-editor.html#option_mysql_config_editor_debug">
         --debug
        </a>
       </td>
       <td>
        Write debugging log
       </td>
      </tr>
      <tr>
       <td>
        <a class="link" href="mysql-config-editor.html#option_mysql_config_editor_help">
         --help
        </a>
       </td>
       <td>
        Display help message and exit
       </td>
      </tr>
      <tr>
       <td>
        <a class="link" href="mysql-config-editor.html#option_mysql_config_editor_verbose">
         --verbose
        </a>
       </td>
       <td>
        Verbose mode
       </td>
      </tr>
      <tr>
       <td>
        <a class="link" href="mysql-config-editor.html#option_mysql_config_editor_version">
         --version
        </a>
       </td>
       <td>
        Display version information and exit
       </td>
      </tr>
     </tbody>
    </table>
   </div>
  </div>
  <br class="table-break"/>
  <div class="itemizedlist">
   <ul class="itemizedlist" style="list-style-type: disc; ">
    <li class="listitem">
     <p>
      <a name="option_mysql_config_editor_help">
      </a>
      <a class="link" href="mysql-config-editor.html#option_mysql_config_editor_help">
       <code class="option">
        --help
       </code>
      </a>
      ,
      <code class="option">
       -?
      </code>
     </p>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for help">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --help
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <a class="indexterm" name="idm46045306042128">
     </a>
     <a class="indexterm" name="idm46045306040640">
     </a>
     <p>
      Display a general help message and exit.
     </p>
     <p>
      To see a command-specific help message, invoke
      <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
       <span class="command">
        <strong>
         mysql_config_editor
        </strong>
       </span>
      </a>
      as follows, where
      <em class="replaceable">
       <code>
        command
       </code>
      </em>
      is a command other than
      <code class="literal">
       help
      </code>
      :
     </p>
     <div class="copytoclipboard-wrapper">
      <pre class="programlisting one-line language-terminal"><div class="docs-select-all right" id="sa98527639"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-terminal">mysql_config_editor <em class="replaceable">command</em> <span class="token property">--help</span></code></pre>
     </div>
    </li>
    <li class="listitem">
     <p>
      <a name="option_mysql_config_editor_debug">
      </a>
      <a class="link" href="mysql-config-editor.html#option_mysql_config_editor_debug">
       <code class="option">
        --debug[=
        <em class="replaceable">
         <code>
          debug_options
         </code>
        </em>
        ]
       </code>
      </a>
      ,
      <code class="option">
       -#
       <em class="replaceable">
        <code>
         debug_options
        </code>
       </em>
      </code>
     </p>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for debug">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --debug[=debug_options]
          </code>
         </td>
        </tr>
        <tr>
         <th>
          Type
         </th>
         <td>
          String
         </td>
        </tr>
        <tr>
         <th>
          Default Value
         </th>
         <td>
          <code class="literal">
           d:t:o
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <a class="indexterm" name="idm46045306021056">
     </a>
     <a class="indexterm" name="idm46045306019568">
     </a>
     <p>
      Write a debugging log. A typical
      <em class="replaceable">
       <code>
        debug_options
       </code>
      </em>
      string is
      <code class="literal">
       d:t:o,
       <em class="replaceable">
        <code>
         file_name
        </code>
       </em>
      </code>
      .
            The default is
      <code class="literal">
       d:t:o,/tmp/mysql_config_editor.trace
      </code>
      .
     </p>
     <p>
      This option is available only if MySQL was built using
      <a class="link" href="source-configuration-options.html#option_cmake_with_debug">
       <code class="option">
        WITH_DEBUG
       </code>
      </a>
      . MySQL release
            binaries provided by Oracle are
      <span class="emphasis">
       <em>
        not
       </em>
      </span>
      built using this option.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="option_mysql_config_editor_verbose">
      </a>
      <a class="link" href="mysql-config-editor.html#option_mysql_config_editor_verbose">
       <code class="option">
        --verbose
       </code>
      </a>
      ,
      <code class="option">
       -v
      </code>
     </p>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for verbose">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --verbose
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <a class="indexterm" name="idm46045306005408">
     </a>
     <a class="indexterm" name="idm46045306003920">
     </a>
     <p>
      Verbose mode. Print more information about what the program
            does. This option may be helpful in diagnosing problems if
            an operation does not have the effect you expect.
     </p>
    </li>
    <li class="listitem">
     <p>
      <a name="option_mysql_config_editor_version">
      </a>
      <a class="link" href="mysql-config-editor.html#option_mysql_config_editor_version">
       <code class="option">
        --version
       </code>
      </a>
      ,
      <code class="option">
       -V
      </code>
     </p>
     <div class="informaltable">
      <table frame="box" rules="all" summary="Properties for version">
       <colgroup>
        <col style="width: 30%"/>
        <col style="width: 70%"/>
       </colgroup>
       <tbody>
        <tr>
         <th>
          Command-Line Format
         </th>
         <td>
          <code class="literal">
           --version
          </code>
         </td>
        </tr>
       </tbody>
      </table>
     </div>
     <a class="indexterm" name="idm46045305993696">
     </a>
     <a class="indexterm" name="idm46045305992208">
     </a>
     <p>
      Display version information and exit.
     </p>
    </li>
   </ul>
  </div>
  <h4>
   <a name="mysql-config-editor-commands">
   </a>
   mysql_config_editor Commands and Command-Specific Options
  </h4>
  <p>
   This section describes the permitted
   <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
    <span class="command">
     <strong>
      mysql_config_editor
     </strong>
    </span>
   </a>
   commands, and, for each
        one, the command-specific options permitted following the
        command name on the command line.
  </p>
  <p>
   In addition,
   <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
    <span class="command">
     <strong>
      mysql_config_editor
     </strong>
    </span>
   </a>
   supports
        general options that can be used preceding any command. For
        descriptions of these options, see
   <a class="xref" href="mysql-config-editor.html#mysql-config-editor-command-options" title="mysql_config_editor General Options">
    mysql_config_editor General Options
   </a>
   .
  </p>
  <p>
   <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
    <span class="command">
     <strong>
      mysql_config_editor
     </strong>
    </span>
   </a>
   supports these commands:
  </p>
  <div class="itemizedlist">
   <ul class="itemizedlist" style="list-style-type: disc; ">
    <li class="listitem">
     <p>
      <code class="literal">
       help
      </code>
     </p>
     <p>
      Display a general help message and exit. This command takes
            no following options.
     </p>
     <p>
      To see a command-specific help message, invoke
      <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
       <span class="command">
        <strong>
         mysql_config_editor
        </strong>
       </span>
      </a>
      as follows, where
      <em class="replaceable">
       <code>
        command
       </code>
      </em>
      is a command other than
      <code class="literal">
       help
      </code>
      :
     </p>
     <div class="copytoclipboard-wrapper">
      <pre class="programlisting one-line language-terminal"><div class="docs-select-all right" id="sa21495583"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-terminal">mysql_config_editor <em class="replaceable">command</em> <span class="token property">--help</span></code></pre>
     </div>
    </li>
    <li class="listitem">
     <p>
      <code class="literal">
       print
            [
       <em class="replaceable">
        <code>
         options
        </code>
       </em>
       ]
      </code>
     </p>
     <p>
      Print the contents of the login path file in unobfuscated
            form, with the exception that passwords are displayed as
      <code class="literal">
       *****
      </code>
      .
     </p>
     <p>
      The default login path name is
      <code class="literal">
       client
      </code>
      if
            no login path is named. If both
      <code class="option">
       --all
      </code>
      and
      <code class="option">
       --login-path
      </code>
      are given,
      <code class="option">
       --all
      </code>
      takes precedence.
     </p>
     <p>
      The
      <code class="literal">
       print
      </code>
      command permits these options
            following the command name:
     </p>
     <div class="itemizedlist">
      <ul class="itemizedlist" style="list-style-type: circle; ">
       <li class="listitem">
        <p>
         <code class="option">
          --help
         </code>
         ,
         <code class="option">
          -?
         </code>
        </p>
        <p>
         Display a help message for the
         <code class="literal">
          print
         </code>
         command and exit.
        </p>
        <p>
         To see a general help message, use
         <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
          <span class="command">
           <strong>
            mysql_config_editor --help
           </strong>
          </span>
         </a>
         .
        </p>
       </li>
       <li class="listitem">
        <p>
         <code class="option">
          --all
         </code>
        </p>
        <p>
         Print the contents of all login paths in the login path
                file.
        </p>
       </li>
       <li class="listitem">
        <p>
         <code class="option">
          --login-path=
          <em class="replaceable">
           <code>
            name
           </code>
          </em>
         </code>
         ,
         <code class="option">
          -G
          <em class="replaceable">
           <code>
            name
           </code>
          </em>
         </code>
        </p>
        <p>
         Print the contents of the named login path.
        </p>
       </li>
      </ul>
     </div>
    </li>
    <li class="listitem">
     <p>
      <code class="literal">
       remove
            [
       <em class="replaceable">
        <code>
         options
        </code>
       </em>
       ]
      </code>
     </p>
     <p>
      Remove a login path from the login path file, or modify a
            login path by removing options from it.
     </p>
     <p>
      This command removes from the login path only such options
            as are specified with the
      <code class="option">
       --host
      </code>
      ,
      <code class="option">
       --password
      </code>
      ,
      <code class="option">
       --port
      </code>
      ,
      <code class="option">
       --socket
      </code>
      , and
      <code class="option">
       --user
      </code>
      options. If none of those options are given,
      <code class="literal">
       remove
      </code>
      removes the entire login path. For
            example, this command removes only the
      <code class="option">
       user
      </code>
      option from the
      <code class="literal">
       mypath
      </code>
      login path rather
            than the entire
      <code class="literal">
       mypath
      </code>
      login path:
     </p>
     <div class="copytoclipboard-wrapper">
      <pre class="programlisting one-line language-terminal"><div class="docs-select-all right" id="sa58196037"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-terminal">mysql_config_editor remove <span class="token constant">--login-path</span><span class="token attr-value"><span class="token punctuation">=</span>mypath</span> <span class="token property">--user</span></code></pre>
     </div>
     <p>
      This command removes the entire
      <code class="literal">
       mypath
      </code>
      login path:
     </p>
     <div class="copytoclipboard-wrapper">
      <pre class="programlisting one-line language-terminal"><div class="docs-select-all right" id="sa52534428"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-terminal">mysql_config_editor remove <span class="token constant">--login-path</span><span class="token attr-value"><span class="token punctuation">=</span>mypath</span></code></pre>
     </div>
     <p>
      The
      <code class="literal">
       remove
      </code>
      command permits these options
            following the command name:
     </p>
     <div class="itemizedlist">
      <ul class="itemizedlist" style="list-style-type: circle; ">
       <li class="listitem">
        <p>
         <code class="option">
          --help
         </code>
         ,
         <code class="option">
          -?
         </code>
        </p>
        <p>
         Display a help message for the
         <code class="literal">
          remove
         </code>
         command and exit.
        </p>
        <p>
         To see a general help message, use
         <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
          <span class="command">
           <strong>
            mysql_config_editor --help
           </strong>
          </span>
         </a>
         .
        </p>
       </li>
       <li class="listitem">
        <p>
         <code class="option">
          --host
         </code>
         ,
         <code class="option">
          -h
         </code>
        </p>
        <p>
         Remove the host name from the login path.
        </p>
       </li>
       <li class="listitem">
        <p>
         <code class="option">
          --login-path=
          <em class="replaceable">
           <code>
            name
           </code>
          </em>
         </code>
         ,
         <code class="option">
          -G
          <em class="replaceable">
           <code>
            name
           </code>
          </em>
         </code>
        </p>
        <p>
         The login path to remove or modify. The default login
                path name is
         <code class="literal">
          client
         </code>
         if this option is
                not given.
        </p>
       </li>
       <li class="listitem">
        <p>
         <code class="option">
          --password
         </code>
         ,
         <code class="option">
          -p
         </code>
        </p>
        <p>
         Remove the password from the login path.
        </p>
       </li>
       <li class="listitem">
        <p>
         <code class="option">
          --port
         </code>
         ,
         <code class="option">
          -P
         </code>
        </p>
        <p>
         Remove the TCP/IP port number from the login path.
        </p>
       </li>
       <li class="listitem">
        <p>
         <code class="option">
          --socket
         </code>
         ,
         <code class="option">
          -S
         </code>
        </p>
        <p>
         Remove the Unix socket file name from the login path.
        </p>
       </li>
       <li class="listitem">
        <p>
         <code class="option">
          --user
         </code>
         ,
         <code class="option">
          -u
         </code>
        </p>
        <p>
         Remove the user name from the login path.
        </p>
       </li>
       <li class="listitem">
        <p>
         <code class="option">
          --warn
         </code>
         ,
         <code class="option">
          -w
         </code>
        </p>
        <p>
         Warn and prompt the user for confirmation if the command
                attempts to remove the default login path
                (
         <code class="literal">
          client
         </code>
         ) and
         <code class="option">
          --login-path=client
         </code>
         was not specified.
                This option is enabled by default; use
         <code class="option">
          --skip-warn
         </code>
         to disable it.
        </p>
       </li>
      </ul>
     </div>
    </li>
    <li class="listitem">
     <p>
      <code class="literal">
       reset
            [
       <em class="replaceable">
        <code>
         options
        </code>
       </em>
       ]
      </code>
     </p>
     <p>
      Empty the contents of the login path file.
     </p>
     <p>
      The
      <code class="literal">
       reset
      </code>
      command permits these options
            following the command name:
     </p>
     <div class="itemizedlist">
      <ul class="itemizedlist" style="list-style-type: circle; ">
       <li class="listitem">
        <p>
         <code class="option">
          --help
         </code>
         ,
         <code class="option">
          -?
         </code>
        </p>
        <p>
         Display a help message for the
         <code class="literal">
          reset
         </code>
         command and exit.
        </p>
        <p>
         To see a general help message, use
         <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
          <span class="command">
           <strong>
            mysql_config_editor --help
           </strong>
          </span>
         </a>
         .
        </p>
       </li>
      </ul>
     </div>
    </li>
    <li class="listitem">
     <p>
      <code class="literal">
       set [
       <em class="replaceable">
        <code>
         options
        </code>
       </em>
       ]
      </code>
     </p>
     <p>
      Write a login path to the login path file.
     </p>
     <p>
      This command writes to the login path only such options as
            are specified with the
      <code class="option">
       --host
      </code>
      ,
      <code class="option">
       --password
      </code>
      ,
      <code class="option">
       --port
      </code>
      ,
      <code class="option">
       --socket
      </code>
      , and
      <code class="option">
       --user
      </code>
      options. If none of those options are given,
      <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
       <span class="command">
        <strong>
         mysql_config_editor
        </strong>
       </span>
      </a>
      writes the login path
            as an empty group.
     </p>
     <p>
      The
      <code class="literal">
       set
      </code>
      command permits these options
            following the command name:
     </p>
     <div class="itemizedlist">
      <ul class="itemizedlist" style="list-style-type: circle; ">
       <li class="listitem">
        <p>
         <code class="option">
          --help
         </code>
         ,
         <code class="option">
          -?
         </code>
        </p>
        <p>
         Display a help message for the
         <code class="literal">
          set
         </code>
         command and exit.
        </p>
        <p>
         To see a general help message, use
         <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
          <span class="command">
           <strong>
            mysql_config_editor --help
           </strong>
          </span>
         </a>
         .
        </p>
       </li>
       <li class="listitem">
        <p>
         <code class="option">
          --host=
          <em class="replaceable">
           <code>
            host_name
           </code>
          </em>
         </code>
         ,
         <code class="option">
          -h
          <em class="replaceable">
           <code>
            host_name
           </code>
          </em>
         </code>
        </p>
        <p>
         The host name to write to the login path.
        </p>
       </li>
       <li class="listitem">
        <p>
         <code class="option">
          --login-path=
          <em class="replaceable">
           <code>
            name
           </code>
          </em>
         </code>
         ,
         <code class="option">
          -G
          <em class="replaceable">
           <code>
            name
           </code>
          </em>
         </code>
        </p>
        <p>
         The login path to create. The default login path name is
         <code class="literal">
          client
         </code>
         if this option is not given.
        </p>
       </li>
       <li class="listitem">
        <p>
         <code class="option">
          --password
         </code>
         ,
         <code class="option">
          -p
         </code>
        </p>
        <p>
         Prompt for a password to write to the login path. After
         <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
          <span class="command">
           <strong>
            mysql_config_editor
           </strong>
          </span>
         </a>
         displays the
                prompt, type the password and press Enter. To prevent
                other users from seeing the password,
         <a class="link" href="mysql-config-editor.html" title="6.6.7 mysql_config_editor — MySQL Configuration Utility">
          <span class="command">
           <strong>
            mysql_config_editor
           </strong>
          </span>
         </a>
         does not echo it.
        </p>
        <p>
         To specify an empty password, press Enter at the
                password prompt. The resulting login path written to the
                login path file includes a line like this:
        </p>
        <div class="copytoclipboard-wrapper">
         <pre class="programlisting one-line language-ini"><div class="docs-select-all right" id="sa22576990"><div class="copy-help left">Press ⌘+C to copy</div> <div class="right"><button class="clipboard-btn" title="Copy to Clipboard"><span class="icon-clipboard"></span></button></div></div><code class="language-ini"><span class="token constant">password</span> <span class="token attr-value"><span class="token punctuation">=</span></span></code></pre>
        </div>
       </li>
       <li class="listitem">
        <p>
         <code class="option">
          --port=
          <em class="replaceable">
           <code>
            port_num
           </code>
          </em>
         </code>
         ,
         <code class="option">
          -P
          <em class="replaceable">
           <code>
            port_num
           </code>
          </em>
         </code>
        </p>
        <p>
         The TCP/IP port number to write to the login path.
        </p>
       </li>
       <li class="listitem">
        <p>
         <code class="option">
          --socket=
          <em class="replaceable">
           <code>
            file_name
           </code>
          </em>
         </code>
         ,
         <code class="option">
          -S
          <em class="replaceable">
           <code>
            file_name
           </code>
          </em>
         </code>
        </p>
        <p>
         The Unix socket file name to write to the login path.
        </p>
       </li>
       <li class="listitem">
        <p>
         <code class="option">
          --user=
          <em class="replaceable">
           <code>
            user_name
           </code>
          </em>
         </code>
         ,
         <code class="option">
          -u
          <em class="replaceable">
           <code>
            user_name
           </code>
          </em>
         </code>
        </p>
        <p>
         The user name to write to the login path.
        </p>
       </li>
       <li class="listitem">
        <p>
         <code class="option">
          --warn
         </code>
         ,
         <code class="option">
          -w
         </code>
        </p>
        <p>
         Warn and prompt the user for confirmation if the command
                attempts to overwrite an existing login path. This
                option is enabled by default; use
         <code class="option">
          --skip-warn
         </code>
         to disable it.
        </p>
       </li>
      </ul>
     </div>
    </li>
   </ul>
  </div>
 </div>
 <br/>
</div>
