文章目录
MySQL初始化配置文件作用
说明:
- 如果没有告诉mysqld_safe例如分给多少内存这些条件,mysqld_safe会按照统一(默认)的配置进行启动!
- MySQL的启动很多必要条件都是需要管理人员提前设定好才能够正常运行!
初始化配置实例
- 如何提前设定必要条件?
如图所示:有三个方式进行设定!
预编译的选项: cmake,硬编码到程序当中
在命令行上初始化配置:
mysqld_safe
--skip-grant-tables
--skip-networking
--socket=/tmp/mysql.sock &
结论:
cmake里面加的选项都可以在命令行中加入使用!
如果预编译和命令行使用的参数相同,那么会以命令行为准
问题:
本身编译好的参数,如果在命令行进行外部干预,会导致在使用
mysql
命令登录的时候出现报错
mysql -uroot -p1234
Warning: Using a password on the command line interface can be insecure.
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/application/mysql-5.6.38/tmp/mysql.sock' (2)
解决:
如果命令行指定的参数变化了,在使用mysql的时候也需要加入参数指定一下
mysql -uroot -p1234 -S /tmp/mysql.sock
初始化配置文件my.cnf(重点)
关于配置文件的读取顺序
- /etc/my.cnf
- /etc/mysql/my.cnf
- $MYSQL_HOME/my.cnf
- defaults-extra-file=/tmp/aa.txt
- ~/.my.cnf
说明:
-defaults-extar-file优先级最高
假设4个配置文件都存在,同时使用 -defaults-extar-file指定了参数文件,如果这时有一个“参数变量”在5个配置文件中都出现了,那么
后面的配置文件中的参数
变量值会覆盖
前面配置文件中的参数变量值,就是说会使用~/.my.cnf中设置的值
注意:
如果使用./bin/mysqld_safe 守护进程启动mysql数据库时,使用了参数
-defaults