my.cnf is the configuration file loaded when mysql starts. It is usually placed in the installation directory of mysql. Users can also load it in other directories.
After installing mysql, there will be multiple my.cnf files in the system, some of which are used for testing.
Use the locate my.cnf command to list all my.cnf files
命令 locate my.cnf 输出 /usr/local/Cellar/mysql/5.6.24/my.cnf /usr/local/Cellar/mysql/5.6.24/mysql-test/include/default_my.cnf /usr/local/Cellar/mysql/5.6.24/mysql-test/suite/federated/my.cnf /usr/local/Cellar/mysql/5.6.24/mysql-test/suite/ndb/my.cnf /usr/local/Cellar/mysql/5.6.24/mysql-test/suite/ndb_big/my.cnf /usr/local/Cellar/mysql/5.6.24/mysql-test/suite/ndb_binlog/my.cnf /usr/local/Cellar/mysql/5.6.24/mysql-test/suite/ndb_rpl/my.cnf /usr/local/Cellar/mysql/5.6.24/mysql-test/suite/ndb_team/my.cnf /usr/local/Cellar/mysql/5.6.24/mysql-test/suite/rpl/extension/bhs/my.cnf /usr/local/Cellar/mysql/5.6.24/mysql-test/suite/rpl/my.cnf /usr/local/Cellar/mysql/5.6.24/mysql-test/suite/rpl_ndb/my.cnf
When we need to modify the configuration file, we need to find out whether mysql is loaded at startup Which my.cnf file.
After starting mysql, we check the mysql process to see if there is a my.cnf file set to use the specified directory. If so It means that this configuration file is loaded when mysql starts.
命令 ps aux|grep mysql|grep 'my.cnf'输出 fdipzone 25174 0.0 0.0 3087244 600 ?? S 4:12下午 0:01.14 /usr/local/Cellar/mysql/5.6.24/bin/mysqld --defaults-file=/usr/local/Cellar/mysql/5.6.24/my.cnf --basedir=/usr/local/Cellar/mysql/5.6.24 --datadir=/usr/local/var/mysql --plugin-dir=/usr/local/Cellar/mysql/5.6.24/lib/plugin --bind-address=127.0.0.1 --log-error=/usr/local/var/mysql/TerrydeMacBook-Air.local.err --pid-file=/usr/local/var/mysql/TerrydeMacBook-Air.local.pid fdipzone 25064 0.0 0.0 2452824 4 ?? S 4:12下午 0:00.03 /bin/sh /usr/local/opt/mysql/bin/mysqld_safe --defaults-file=/usr/local/Cellar/mysql/5.6.24/my.cnf --bind-address=127.0.0.1 --datadir=/usr/local/var/mysql
You can see that /usr/local/Cellar/mysql/5.6.24/my.cnf is the configuration file loaded by mysql startup.
If there is no output from the above command, it means that my.cnf using the specified directory is not set.
If there is no setting to use my.cnf in the specified directory, mysql will read the root directory of the installation directory and the default directory when it starts. my.cnf file.
View the default directory for reading configuration files when mysql starts
命令 mysql --help|grep 'my.cnf'输出 order of preference, my.cnf, $MYSQL_TCP_PORT, /etc/my.cnf /etc/mysql/my.cnf /usr/local/etc/my.cnf ~/.my.cnf
/etc/my.cnf, /etc/mysql/my.cnf, /usr/local/etc/my.cnf , ~/.my.cnf These are the directories that mysql will search for my.cnf by default, the one with the highest priority.
If there is no setting to use the my.cnf file in the specified directory and the default reading directory does not have a my.cnf file, it means that the configuration file is not loaded when mysql starts. , instead use the default configuration.
If you need to modify the configuration, you can create a my.cnf file (for example: /etc/my.cnf) in the directory that mysql reads by default, write the configuration content that needs to be modified, and restart mysql. Can take effect.
This article introduces the method of mysql to view the currently used configuration file my.cnf. For more related content, please pay attention to the php Chinese website.
Related recommendations:
How to determine whether a point is within a specified polygon area through mysql
How to call php imagemagick to achieve this Old photo effect
#Explanation on calculating the Cartesian product of multiple sets in PHP
The above is the detailed content of An explanation of how to view the currently used configuration file my.cnf in mysql. For more information, please follow other related articles on the PHP Chinese website!