mysql 基础 -mysqld_safe 启动执行流程
来源:互联网 发布:网络电话机终端 编辑:程序博客网 时间:2024/04/30 23:31
mysqld_safe脚本执行的基本流程:
1、查找basedir和ledir。
2、查找datadir和my.cnf。
3、对my.cnf做一些检查,具体检查哪些选项请看附件中的注释。
4、解析my.cnf中的组[mysqld]和[mysqld_safe]并和终端里输入的命令合并。
5、调用parse_arguments函数解析用户传递的所有参数($@)。
6、对系统日志和错误日志的判断和相应处理具体可以参考附件中的注释,及选项--err-log参数的赋值。
7、对选项--user,--pid-file,--socket及--port进行处理及赋值,保证启动时如果不给出这些参数它也会有值。
8、启动mysqld.
a)启动时会判断一个进程号是否存在,如果存在那么就在错误日志中记录"A mysqld process already exists"并且退出。
b)如不存在就删除进程文件,如果删除不了,那么就在错误日志中记录"Fatal error: Can't remove the pid file"并退出。
9、启动时对表进行检查。如果启动的时候检查表的话设置key_buffer and sort_buffer会提高速度并且减少磁盘空间的使用。也可以使用myisam-recover选项恢复出错的myisam表。
总结:选用mysqld_safe启动的好处。
1、mysqld_safe增加了一些安全特性,例如当出现错误时重启服务器并向错误日志文件写入运行时间信息。
2、如果有的选项是mysqld_safe 启动时特有的,那么可以终端指定,如果在配置文件中指定需要放在[mysqld_safe]组里面,放在其他组不能被正确解析。
3、mysqld_safe启动能够指定内核文件大小 ulimit -c $core_file_size以及打开的文件的数量ulimit -n $size。
4、MySQL程序首先检查环境变量,然后检查配置文件,最后检查终端的选项,说明终端指定选项优先级最高。
1、查找basedir和ledir。
2、查找datadir和my.cnf。
3、对my.cnf做一些检查,具体检查哪些选项请看附件中的注释。
4、解析my.cnf中的组[mysqld]和[mysqld_safe]并和终端里输入的命令合并。
5、调用parse_arguments函数解析用户传递的所有参数($@)。
6、对系统日志和错误日志的判断和相应处理具体可以参考附件中的注释,及选项--err-log参数的赋值。
7、对选项--user,--pid-file,--socket及--port进行处理及赋值,保证启动时如果不给出这些参数它也会有值。
8、启动mysqld.
a)启动时会判断一个进程号是否存在,如果存在那么就在错误日志中记录"A mysqld process already exists"并且退出。
b)如不存在就删除进程文件,如果删除不了,那么就在错误日志中记录"Fatal error: Can't remove the pid file"并退出。
9、启动时对表进行检查。如果启动的时候检查表的话设置key_buffer and sort_buffer会提高速度并且减少磁盘空间的使用。也可以使用myisam-recover选项恢复出错的myisam表。
10、如果启动时你什么参数都没有给,那么它会选用一些特定的参数启动,具体哪些参数请看附件注释。
11、如果服务器异常关闭,那么会restart。
最后用三步来总结
检查环境
检查配置选项
启动及启动后的处理总结:选用mysqld_safe启动的好处。
1、mysqld_safe增加了一些安全特性,例如当出现错误时重启服务器并向错误日志文件写入运行时间信息。
2、如果有的选项是mysqld_safe 启动时特有的,那么可以终端指定,如果在配置文件中指定需要放在[mysqld_safe]组里面,放在其他组不能被正确解析。
3、mysqld_safe启动能够指定内核文件大小 ulimit -c $core_file_size以及打开的文件的数量ulimit -n $size。
4、MySQL程序首先检查环境变量,然后检查配置文件,最后检查终端的选项,说明终端指定选项优先级最高。
- mysql 基础 -mysqld_safe 启动执行流程
- mysql 基础 -mysqld_safe 启动执行流程
- mysqld_safe 启动执行流程
- mysql.server,mysqld_safe,mysqld启动区别(转载收藏)
- mysqld_safe启动选项
- Mysqld_safe启动脚本
- mysqld_safe启动报错
- mysqld_safe启动报错 mysqld_safe The file /usr/local/mysql/bin/mysqld does not exist or is not executable
- mysql与mysqld_safe
- 启动mysql错误解决方案,学会查看错误日志:mysql.sock丢失,mysqld_safe启动报错
- 启动mysql错误解决方案,学会查看错误日志:mysql.sock丢失,mysqld_safe启动报错
- 启动mysql错误解决方案,学会查看错误日志:mysql.sock丢失,mysqld_safe启动报错
- 启动mysql错误解决方案,学会查看错误日志:mysql.sock丢失,mysqld_safe启动报错
- 启动mysql错误解决方案,学会查看错误日志:mysql.sock丢失,mysqld_safe启动报错
- Fuck MySQL (3) Ubuntu下mysql无法启动Couldn't find MySQL server (/usr/bin/mysqld_safe)”
- 启动Mysql时报错:mysqld_safe mysqld from pid file /usr/local/mysql/data/Linux.pid ended
- ubuntu下mysql无法启动Couldn't find MySQL server (/usr/bin/mysqld_safe)”
- ubuntu14.10下启动mysql服务时出现“* Couldn't find MySQL server (/usr/bin/mysqld_safe)”
- Windows消息大全
- synchronize java
- WM_COMMAND
- Essential C++学习笔记------第五章
- 没有“temp”的swap
- mysql 基础 -mysqld_safe 启动执行流程
- ES3和ES5中函数调用(function call) 的浏览器实现差异.
- POJ-2226-Muddy Fields
- UVA465-溢出
- WM_NCCALCSIZE
- 字符设备 register_chrdev_region()、alloc_chrdev_region() 和 register_chrdev()
- LoadMenuIndirect
- synchronized java 详解2
- 阅读uboot源码的历程