• Daniel Black's avatar
    defaults-group-suffix in print_defaults · 88ac368f
    Daniel Black authored
    Also clarify which --{no-,}default* options, must be first.
    
    Sample output:
    $  client/mysql --help
    client/mysql  Ver 15.1 Distrib 5.5.59-MariaDB, for Linux (x86_64) using readline 5.1
    Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.
    
    Usage: client/mysql [OPTIONS] [database]
    
    Default options are read from the following files in the given order:
    /etc/my.cnf /etc/mysql/my.cnf ~/.my.cnf
    The following groups are read: mysql client client-server client-mariadb
    The following options may be given as the first argument:
    --print-defaults          Print the program argument list and exit.
    --no-defaults             Don't read default options from any option file.
    The following specify which files/groups are read (specified before other options):
    --defaults-file=#         Only read default options from the given file #.
    --defaults-extra-file=#   Read this file after the global files are read.
    --defaults-group-suffix=# Additionally read default groups with # appended as a suffix.
    
    tests running from build directory:
    TEST: print defaults ignored as not first
    $ sql/mysqld  --no-defaults --print-defaults --lc-messages-dir=${PWD}/sql/share
    
    TEST: no startup occurs as --print-defaults specified
    $ sql/mysqld  --print-defaults --lc-messages-dir=${PWD}/sql/share
    sql/mysqld would have been started with the following arguments:
    --lc-messages-dir=/home/dan/repos/build-mariadb-5.5/sql/share
    
    TEST: default args can't be anywhere
    $ client/mysql --user=bob  --defaults-file=/etc/my.cnf
    client/mysql: unknown variable 'defaults-file=/etc/my.cnf'
    $ client/mysql --user=bob  --defaults-group-suffix=.group
    client/mysql: unknown variable 'defaults-group-suffix=.group'
    
    /etc/my.cnf:
    [client-server.group]
    socket=/var/lib/mysql-multi/group/mysqld.sock
    user=bob
    
    /etc/my.other.cnf:
    socket=/var/lib/mysql-other/mysqld.sock
    
    TEST: defaults file read and suffix also applied
    $  client/mysql  --defaults-file=/etc/my.other.cnf  --defaults-group-suffix=.group
    ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql-other/mysqld.sock' (2)
    
    TEST: defaults extra file
    $ client/mysql  --defaults-extra-file=/etc/my.other.cnf  --defaults-group-suffix=.group
    ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql-other/mysqld.sock' (2)
    88ac368f
mysqld--help.result 44.9 KB