昨天花了一天时间写了mysql的源码安装,比较蛋疼。其中对于mysqld_safe尤其不理解,因为使用apt-get安装几乎中间不需要什么配置,只需要service mysql start即可,但是源码安装在service之前必须要先启动mysqld_safe。关于这个mysqld_safe今天在官网上找到了.原文戳这里http://dev.mysql.com/doc/refman/5.5/en/mysqld-safe.html。同时更正一点,使用cmake生成配置文件应该是从5.5就开始的了,我猜测使用cmake和mysqld_safe这一特性应该是从同一版本开始的。因为编译安装太耗费时间我也就不去验证了。以下是对mysqld_safe的翻译。  

  mysqld_safe是官方推荐的在Unix上运行mysql服务器的方式。mysqld_safe增加了一些安全特性,比如:当发生错误时重启服务器、将运行中的错误信息记录到错误日志。
  mysqld_safe会启动一个叫mysqld的可执行文件。如果要查看相关文件并且指定你想要运行的服务器名称,在mysqld_safe后加--mysqld或者--mysqld-version参数(这句话翻译的不是很好,意思就是如果你想查看mysql的pid、error文件可以使用mysqld_safe --mysqld-version查看,如果想要完全重启服务可以使用mysqld_safe -mysqld重新生成pid和error文件,个人的理解是mysqld_safe的作用是生成pid和error文件,并启动mysqld)。
  mysqld_safe的很多参数都是和mysqld相同的。  
  在命令行中,如果指定给mysqld_safe的参数是mysqld_safe没有的,这个参数会传递给mysqld,但是如果参数是在配置文件中的[mysqld_safe]中定义的话,那么直接忽略。
  mysqld_safe从配置文件的[mysqld],[server]和[mysqld_safe]节中读取参数。比如:如果你在[mysqld]节中指定以下参数,mysqld_safe会查找并使用--log-error参数:

  1. [mysqld]
  2. log-error=error.log

  为了向后兼容,mysqld_safe也会从[safe_mysqld]节中读取参数,但是为了统一你最好还是写成[mysqld_safe]

关于mysqld_safe的更多相关文章

  1. 执行mysqld_safe报错:mysqld does not exist or is not executable

    执行mysqld_safe报错: [root@edu data]# /usr/local/mysql5.7/bin/mysqld_safe --user=mysql160427 12:41:28 my ...

  2. 关于Mysql错误:./bin/mysqld_safe --user=mysql& [1] 32710 121003 16:40:22 mysqld_safe Logging to '/var/log/mysqld.log'. 121003 16:40:22 mysqld_s

    [root@www]# ./bin/mysqld_safe --user=mysql&[1] 32710[root@www]# 121003 16:40:22 mysqld_safe Logg ...

  3. mysqld_safe启动报错 mysqld_safe The file /usr/local/mysql/bin/mysqld does not exist or is not executable

    报错(如下),但是使用mysqld直接启动没有问题. 150718 00:03:38 mysqld_safe Logging to '/var/log/mysqld.log'. 150718 00:0 ...

  4. Error with mysqld_safe

    出处:http://bugs.mysql.com/bug.php?id=18403 Description: - I downloaded the binary file “Standard 5.0. ...

  5. 启动mysql错误解决方案,学会查看错误日志:mysql.sock丢失,mysqld_safe启动报错

    本人还是个菜鸟,下面是我的经验之谈,能解决一些问题,有不对的地方,敬请斧正. 我的是CentOS6.3+MySQL5.1.57. 重启了一次服务器后,使用> mysql -u root -p登陆 ...

  6. [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.user' doesn't exist 160913 02:11:21 mysqld_safe mysqld from pid file /tmp/mysql.pid ended

    -- :: [Note] InnoDB: Renaming log file ./ib_logfile101 to ./ib_logfile0 -- :: [Warning] InnoDB: New ...

  7. 【国庆】记一次mysqld_safe引发mysql进程故障

    今天是举国欢庆的日子,但是Mariadb密码忘记了,于是巴拉巴拉的执行"mysqld_safe --skip-grant-tables &"这个神技能,打算跳过密码验证,直 ...

  8. Linux下忘记MySQL密码的解决方法和输入mysqld_safe --skip-grant-tables &后无法进入MySQL的解决方法

    在Linux下忘记MySQL密码后我们可以通过一个mysql的参数--skip-grant-tables &轻松解决这个问题 亲测在CentOS有效 其中 --skip-grant-table ...

  9. mysqld_safe启动服务器总结

    mysqld_safe是服务端工具,用于启动mysqld,并且是mysqld的守护进程,mysqld_safe加&在后台运行$BASEDIR/bin/mysqld_safe & 优点就 ...

  10. Mysql mysqld_safe启动与myslqd启动坑

    一.用mysqld_safe启动时候无法看到报错信息. 二.用mysqld启动时候可以看到日志实时打印.

随机推荐

  1. Laya Tween循环

    Laya Tween循环 @author ixenos 需求:做一个循环的缓动动画 方案: 1)如果只是线性变化,那么直接使用timer或者frameLoop来变化 2)如果需要有非线性变化,那么使用 ...

  2. [POJ2446] Chessboard(二分图最大匹配-匈牙利算法)

    传送门 把所有非障碍的相邻格子彼此连一条边,然后求二分图最大匹配,看 tot * 2 + k 是否等于 n * m 即可. 但是连边不能重复,比如 a 格子 和 b 格子 相邻,不能 a 连 b ,b ...

  3. hdu1059(背包dp二进制优化)

    Dividing Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Subm ...

  4. 洛谷 P4720 【模板】扩展 / 卢卡斯 模板题

    扩展卢卡斯定理 : https://www.luogu.org/problemnew/show/P4720 卢卡斯定理:https://www.luogu.org/problemnew/show/P3 ...

  5. (二)Commonjs规范与模块化

    在之前的学习中我们使用require()来引入我们需要的包,这其实就是模块化,各模块相互独立,可以通过某种方式引入别的模块.而这些引入方式都是遵循一定的规范的,这就是CommonJS规范. 一.Com ...

  6. 最短路——Dijkstra算法

    模板 水模板ing #include <cstdio> #include <cstring> #include <algorithm> #include <i ...

  7. JavaOne Online Hands-on Labs

    http://www.oracle.com/technetwork/java/index-156938.html

  8. lemon oa前端页面——由user-base-list谈项目组织

    content user-base-list.jsp中指定<%pageContext.setAttribute("currentHeader", "user&quo ...

  9. Ubuntu更换主板之后 网络重新配置

    Ubuntu更换主板之后,网络不能用,需要重新配置 1.  首要要查看新主板的mac地址, dmesg | grep eth 2.  修改网络信息,该配置文件是/etc/udev/rules.d, 文 ...

  10. 微信小程序-setData()方法

    一般setData方法多用于点击后改变页面信息或者刷新后与后台交互获取最新的信息 注意: 直接修改 this.data 而不调用 this.setData 是无法改变页面的状态的,还会造成数据不一致 ...