1.问题原因与解决办法

因为修改了MySQL临时文件的目录后,使用service mysqld restart重启MySQL出现如下错误:

service: no such service mysqld

错误原因: 
是因为我们在编译安装MySQL时没有将MySQL的控制脚本mysql.server拷贝到/etc/init.d/中。

解决办法: 
将MySQL的安装目录下的support-files/mysql.server拷贝到/etc/init.d/中,并重命名为mysqld。拷贝命令如下:

#我的mysql安装路径是:/usr/local/mysql
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld

2.service命令的工作原理

service命令,顾名思义,就是用于管理Linux操作系统中服务的命令。可以用来启动、关闭和重新启动系统服务,还可以显示所有系统服务的当前状态。

但是,能够使用service命令进行操作的,就是已经注册成为linux的系统服务了。window中也可以注册成为系统服务。那么如何注册成为系统服务呢?

比如从网上下载一个新的软件,安装到linux上面去。想注册成系统服务,我需要自己编写一个shell服务脚本文件才行。这个服务脚本文件如何编写呢?如果不了解servcie命令的机制,会漏掉一些东西了。比如我之前下载的sphinx安装到服务器后。我想使用”service sphinx start”这样的简短命令来管理,就必须注册成为系统服务,而有些软件的源码包中是没有提供写好的脚本的,有时必须自己写一个。但是,幸好MySQL自带了服务脚本可供service命令调用,也就是上面的mysql.server这个脚本,我们要做的就是将MySQL的服务脚本拷贝到/ect/init.d/目录下,并重命名为mysqld。

与service相关的chkconfig命令的作用? 
service命令可以快速地开启和停止linux中的服务程序,这在调试过程中非常有用chkconfig命令可以快速地设置开机时需要自动启动的服务程序。

这两个命令的功能都可以通过其他方法实现,只不过有了它们之后更加方便,维护工作可以更加轻松。

chkconfig命令的用法不再赘述!网上自行查阅!

3./ect/init.d/目录存放的是什么

在Linux中,/etc/init.d 和 /etc/rc.d/init.d这两个目录,都是用来放服务脚本的,这两个目录一般不会同时存在,因为功能是一样的。当Linux启动时,会根据chkconfig命令设置run level来确定是否启动相应的程序,如果启动的话就回去寻找这些目录中的服务脚本,并启动相应的程序。

4.不使用service如何开启,关闭,重启mysql

如果没有将mysql注册为系统服务,那么我们可以使用MySQL为我们提供的一些工具来开启,关闭,重启mysql。当然,mysql服务脚本对mysql的操作也是调用这些工具来完成的。这些工具都在mysql的安装目录的bin目录中。贴个图: 

如果我们按照上面的操作将mysql注册为系统服务的话,使用service来开启,关闭,重启mysql非常方便,命令如下:

#重启
service mysqld restart #开启
service mysqld start #关闭
service mysqld stop

或者执行运行服务脚本mysqld或者mysql.server:

#启动
/etc/inint.d/mysqld start #关闭
/etc/inint.d/mysqld stop #重启
/etc/inint.d/mysqld restart

不使用service如何开启,关闭,重启mysql,也就意味这不使用mysql为我们提供的服务脚本mysql.server来管理mysql的开启和关闭。但我们可以使用如下工具来完成。

开启mysql:

/usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql --log-error=/usr/local/mysql/data/Tencent_IM.err --pid-file=/usr/local/mysql/data/Tencent_IM.pid --socket=/tmp/mysql.sock --port=3306

有点长,上面是我黏贴正在运行的mysql进程,大家也可以在关闭mysql之前使用ps查看,并复制一下。

或者使用mysqld_safe来启动mysql:

mysqld_safe --user=mysql &

关闭mysql:

mysqladmin -u[username] -p[password] shutdown

重启mysql: 
查看mysql的服务脚本mysql.server或者mysqld,我发现重启mysql也是先关闭,再启动。所以没有直接重启的命令,还是乖乖的先关闭,再启动吧!

当然,利用mysql提供的工具来控制mysql的开启和关闭,应该还有其它的方法,我目前还不要太清楚,有知道的请留言告知,万分感谢!

5.mysql和mysqld的区别

mysqld(mysql deamon)是服务端程序,是mysql提供服务的主要程序,提供服务的还有很多其它的程序,见mysql安装目录的bin目录。

mysql是命令行客户端程序,用于执行sql语句!

还要注意一点,我们习惯把mysql的服务脚本mysql.server更名为mysqld放在/etc/init.d/目录下,将mysql注册为系统服务。

service: no such service mysqld 与MySQL的开启,关闭和重启的更多相关文章

  1. MySQL 在线开启&关闭GTID模式

    MySQL 在线开启&关闭GTID模式 目录 MySQL 在线开启&关闭GTID模式 基本概述 在线开启GTID 1. 设置GTID校验ENFORCE_GTID_CONSISTENCY ...

  2. mysql启动,关闭,重启

    1)启动: ? 1 sudo /etc/init.d/mysql start 2)停止: ? 1 sudo /etc/init.d/mysql stop 3)重启: ? 1 sudo /etc/ini ...

  3. Windows下Mysql数据库服务的关闭和重启

    有时我们在手动修改了Mysql的配置文件之后,我们要重启Mysql服务才能使之生效,这里提供几种重启方法: 1.windows下重新启动mysql5的方法:在安装mysql时系统会添加服务,可以通过管 ...

  4. Mac入门--Apache/Php/Mysql的开启关闭

    注意:mac自带apache环境和PHP环境 一 php服务的启动和关闭 php-fpm 启动 sudo php-fpm php-fpm 关闭 1 查看php-fpm端口是否在被php-fpm进程 n ...

  5. mysql 错误解决:Plugin 'FEDERATED' is disabled. /usr/sbin/mysqld: Table 'mysql.plugin' doesn't exist

    今天安装完Mysql后,开启发生了错误: 1.打开相应文件夹,查看错误信息: 2.打开错误信息文件,查看错误原因是:Plugin 'FEDERATED' is disabled. /usr/sbin/ ...

  6. Failed to stop iptables.service: Unit iptables.service not loaded.

    redhat 7 [root@lk0 ~]# service iptables stop Redirecting to /bin/systemctl stop iptables.service Fai ...

  7. 如何提高Service的优先级避免被杀死或者杀死后如何再次重启Service?

    2014-01-21 16:45:02 我们知道,当进程长期不活动时,如果系统资源吃紧,会杀死一些Service,或不可见的Activity等所在的进程. 如何避免Service被系统杀死,随便在网上 ...

  8. Local System、Local Service與Network Service

    CreateService参数介绍SC_HANDLE CreateService( SC_HANDLE hSCManager, //服务控制管理程序维护的登记数据库的句柄,由系统函数OpenSCMan ...

  9. Android Service生命周期 Service里面的onStartCommand()方法详解

    在Demo上,Start一个Service之后,执行顺序:onCreate - > onStartCommand 然后关闭应用,会重新执行上面两步. 但是把代码拷贝到游戏工程发现,关闭游戏后,只 ...

随机推荐

  1. Ubuntu 12.04 之 LAMP

    搭建LAMP环境 (1)更新软件列表: sudo apt-get update 结果报错: W: 无法下载 bzip2:/var/lib/apt/lists/partial/cn.archive.ub ...

  2. SQL SERVER 2012 第三章 T-SQL 基本语句 group by 聚合函数

    select Name,salesPersonID From Sales.store where name between 'g' and 'j' and salespersonID > 283 ...

  3. Codeforces 651B Beautiful Paintings【贪心】

    题意: 给定序列,重新排序,使严格上升的子序列最多.求这些子序列总长度. 分析: 贪心,统计每个元素出现次数,每次从剩余的小的开始抽到大的,直到不再剩余元素. 代码: #include<iost ...

  4. Ubuntu 16.04错误:正在读取软件包列表... 有错误! E: Encountered a section with no Package: header E: Problem with MergeList /var/lib/apt/lists/ppa.launchpad.net_t-tujikawa_ppa_ubuntu_dists_xenial_main_i18n_Translatio

    错误: 正在读取软件包列表... 有错误! E: Encountered a section with no Package: header E: Problem with MergeList /va ...

  5. spring依赖注入中获取JavaBean

    一.这个接口有什么用? 当一个类实现了这个接口(ApplicationContextAware)之后,这个类就可以方便获得ApplicationContext中的所有bean.换句话说,就是这个类可以 ...

  6. [大雾雾雾雾] 告别该死的 EFCore Fluent API

    [EF Core Oracle  列名大小写问题] [EF Core Oracle column name case problem] [EF Core PostgreSql 列名大小写问题] [EF ...

  7. AE After Effect 如何替换和修改素材

    替换素材:如图所示,相框外的人是成双成对的,相框里面的却只有一个人,我们想要把这个素材替换成两个人的.我们鼠标放到视频预览框的任何一个元素上面底部都会提示这是什么素材.比如我放到一个人的上面,则该人物 ...

  8. java之Map源代码浅析

    Map是键值对.也是经常使用的数据结构. Map接口定义了map的基本行为.包含最核心的get和put操作,此接口的定义的方法见下图: JDK中有不同的的map实现,分别适用于不同的应用场景.如线程安 ...

  9. ZOJ 1806 (小数高精度)

    题意:八进制小数转化成十进制的小数. 0.d1d2d3 ... dk [8] = 0.D1D2D3 ... Dm [10] 例: 0.75 [8] = 7*8^-1+5*8^-2 = ( 5/8 + ...

  10. android获取手机的IMSI码

    android--获取手机的IMSI码,并判断是中国移动\中国联通\中国电信转载 TelephonyManager telManager = (TelephonyManager) getSystemS ...