ホームページ >データベース >mysql チュートリアル >Linuxでmysqlサービスを停止するコマンドは何ですか?

Linuxでmysqlサービスを停止するコマンドは何ですか?

藏色散人
藏色散人オリジナル
2023-02-13 09:39:046957ブラウズ

Linux の stop mysql サービス コマンドは次のとおりです: 1. 「service mysqld stopRedirecting to /bin/systemctl」などの構文を使用して、service コマンドを使用して停止します。2. 停止するには、systemctl コマンドを使用します。 "/bin/systemctl stop mysqld.service" などの構文; 3. "mysqladmin -uroot" などの構文でコマンド mysqladmin を使用して停止します。

Linuxでmysqlサービスを停止するコマンドは何ですか?

このチュートリアルの動作環境: linux5.9.8 システム、 mysql5 .5 バージョン、Dell G3 コンピューター。

Linux で mysql サービスを停止するコマンドは何ですか?

#MySQL データベースを起動/再起動/停止するための Linux コマンド

1. MySQL データベースを起動するためのコマンド

(1) コマンド サービスを使用して開始します
[root@htlwk0001host /]# service mysqld startRedirecting to /bin/systemctl start mysqld.service

手順:

MySQL データベース サービスは正常に開始できますが、実際には次の場所にリダイレクトされます。コマンド systemctl を使用してサービスを開始します。

(2) systemctl コマンドを使用して
[root@htlwk0001host ~]# systemctl start mysqld.service
を起動します。
関連する環境変数が設定されていない場合は、systemctl コマンドが存在するディレクトリに移動して、上記のコマンド ステートメントを実行するか、コマンド ターミナルにコマンドの完全なパスを直接入力して実行します:

[root@htlwk0001host ~]# /bin/systemctl start mysqld.service

コマンドが存在するディレクトリがわからない場合は、次のコマンドを使用できます。クエリ。

#2. MySQL データベースを停止するコマンド

(1) コマンドサービスを使用して

[root@htlwk0001host /]# service mysqld stopRedirecting to /bin/systemctl 
stop mysqld.service
## を停止します#手順:

(1) MySQL データベース サービスは正常に停止できますが、実際にはサービスを停止するコマンド systemctl にリダイレクトされます。

(2) ubuntu システムの場合、データベースを停止するコマンドは次のとおりです: service mysql stop

コマンド サービスはどこですか?

[root@htlwk0001host ~]# which service
/usr/sbin/service

注: ユーザー root のみが、ディレクトリ /sbin 内のコマンドを使用する権限を持っています。

コマンド systemctl はどこにありますか?

[root@htlwk0001host ~]# which systemctl
/usr/bin/systemctl

(2) コマンド systemctl を使用して

[root@htlwk0001host ~]# /bin/systemctl stop mysqld.service
を停止します。

環境変数が設定されている場合は、完全なパスを指定する必要はありません。コマンドを直接入力します:
[root@htlwk0001host ~]# systemctl stop mysqld.service

(3) コマンド mysqladmin を使用して

このコマンドを使用してデータベース サービスを停止します。実際には、ログインする必要があります。データベースにログインするため、データベースにログインするにはユーザー名とパスワードを入力する必要があります。ログインに成功したら、コマンド オプション shutdown を実行します。コマンド ステートメントは次のとおりです:
[root@htlwk0001host ~]# mysqladmin -uroot -p shutdown

3. MySQL データベースを再起動するコマンド

(1) コマンド「Service restart

[root@htlwk0001host ~]# service mysqld restartRedirecting to /bin/systemctl restart mysqld.service

」を使用します。注:

は、 systemctl コマンドを実行してサービスを再起動します。

# (2) systemctl コマンドを使用して

[root@htlwk0001host home]# /bin/systemctl restart mysqld.service

4. MySQL が起動したかどうかを確認する方法

(1) コマンド pgrep
[root@htlwk0001host ~]# pgrep -l mysqld1060114 mysqld

手順: コマンド grep は、システム上で現在実行中のプロセスを検索するためのものです。結果はプロセス名に従って見つけることができ、プロセス mysqld が実行中であることを示します。

(2) ps コマンドを使用して

[root@htlwk0001host ~]# ps aux | grep mysqlmysql    1060114  1.5  4.9 1604076 182836 ?      Sl   08:33   0:00 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid
root     1060165  0.0  0.0  12320   972 pts/0    S+   08:33   0:00 grep --color=auto mysql
を表示します。

手順: 上に示すように、プロセス mysqld はバックグラウンド プロセスです。 (つまり、デーモン化)、プロセスのステータスは

sl

です。これは、プロセスが子プロセスであり、休止状態にあることを意味します。MySQL が起動されていない場合、このプロセスは見つかりません。が見つかった場合は、データベースが開始されたことを意味します。
検索結果の説明: プロセスはユーザー mysql に属し、プロセス ID は 1060114、CPU 占有時間割合は 1.5%、メモリ占有割合は 4.9%、使用できる仮想メモリのサイズは 1604076 キロバイト、プロセスが占有するロジスティクス メモリは 182836 キロバイト、プロセスの起動時間は 8:33 (年、月、日については現在のシステム時刻を参照)、実際の CPU使用時間は 0 (更新すべきではありません!)

(3) cat コマンドを使用して

[root@htlwk0001host ~]# cat /proc/1060114/statusName:	mysqld                			# 进程名称Umask:	0026							# 用户权限屏蔽位,实际权限=预设权限-Umask						State:	S (sleeping)					# 进程状态,可中断的睡眠状态Tgid:	1060114							# 线程组Id,等于Pid								Ngid:	0
Pid:	1060114							# 进程IdPPid:	1								# 父进程Id,启动PidTracerPid:	0							# 跟踪进程的PidUid:	27	27	27	27					# Uid/Euid/Suid/Fsuid 拥有者Id/有效用户Id/Suid(Set User ID)/Fsuid(file system user ID)Gid:	27	27	27	27					# Gid/Egid/Sgid/Fsgid 对照Uid来理解FDSize:	128								# 文件描述符的最大个数Groups:	27 								# 启动该进程的用户所属的组的IdNStgid:	1060114
NSpid:	1060114
NSpgid:	1060113
NSsid:	1060113
VmPeak:	 1604620 kB                     # 表示进程所占用最大虚拟内存大小,即进程所使用的虚拟内存的峰值VmSize:	 1604620 kB						# 表示进程当前使用的虚拟内存大小VmLck:	       0 kB						# 表示被锁定的内存大小,即已经锁住的物理内存的大小(锁住的物理内存不能交换到硬盘)VmPin:	       0 kB
VmHWM:	  183668 kB						# 表示进程所占用物理内存的峰值VmRSS:	  183632 kB						# 表示进程当前占用物理内存的大小(与procrank中的RSS)RssAnon:	  166396 kB
RssFile:	   17236 kB
RssShmem:	       0 kB
VmData:	  549388 kB						# 表示进程占用的数据段的大小VmStk:	     132 kB						# 表示进程堆栈段的大小,即进程占用的栈的大小VmExe:	   25480 kB						# 表示进程代码的大小,进程占用的代码段大小(不包括库)VmLib:	    7596 kB						# 表示进程所使用共享库的大小,进程所加载的动态库所占用的内存大小(可能与其它进程共享)VmPTE:	     696 kB						# 表示进程页表项的大小,进程占用的页表大小(交换表项数量)VmSwap:	       0 kB						# 进程所使用的交换区的大小HugetlbPages:	       0 kB				# Huge Translation Lookaside Buffer Pages 巨大的快速查找缓冲页表CoreDumping:	0						# 核心转储数据大小Threads:	48							# 共享使用该信号描述符的任务的个数SigQ:	0/14419							# 待处理信号的个数/目前最大可以处理的信号的个数SigPnd:	0000000000000000				# 屏蔽位,存储了该线程的待处理信号ShdPnd:	0000000000000000				# 屏蔽位,存储了该线程组的待处理信号SigBlk:	0000000000084007				# 存放被阻塞的信号SigIgn:	0000000000003000				# 存放被忽略的信号SigCgt:	00000001800006e8				# 存放被俘获到的信号CapInh:	0000000000000000				# 能被当前进程执行的程序的继承的能力CapPrm:	0000000000000000				# 进程能够使用的能力,可以包含CapEff中没有的能力,这些能力是被进程自己临时放弃的CapEff:	0000000000000000				# 是CapPrm的一个子集,进程放弃没有必要的能力有利于提高安全性CapBnd:	0000003fffffffff				# 是系统的边界能力,我们无法改变它CapAmb:	0000000000000000
NoNewPrivs:	0							# 没有新权限Seccomp:	0							# seccomp机制用于限制应用程序可以使用的系统调用,增加系统的安全性。Speculation_Store_Bypass:	vulnerable
Cpus_allowed:	3						# 可以执行该进程的CPU掩码集Cpus_allowed_list:	0-1					# 该进程可以使用CPU的列表,这里是0-1Mems_allowed:							# 更改进程执行时占用的内存有关Mems_allowed_list:	0					# 进程只是使用了结点0的内存资源voluntary_ctxt_switches:	94			# 表示进程主动切换的次数nonvoluntary_ctxt_switches:	194			# 进程被动切换的次数
#手順を表示します:

/proc / は仮想ファイル システムであり、システム メモリのマッピングです。このディレクトリ内のデータはメモリに保存され、ハード ディスクのスペースを占有しません。 、このディレクトリからプロセス情報を見つけるだけで十分です。プロセスが開始されている場合、関連する情報はメモリ内で見つかりません。

  • Tgid 是指线程组 Id,Tgid=Pid。一个进程就是一个线程组,每个进程的所有线程都有着相同的 Tgid,当程序开始运行时,只有一个主线程,这个主线程的 Tgid 就等于 Pid。而当其他线程被创建的时候,就继承了主线程的 Tgid。

  • CoreDumping 当程序在运行的过程中出现异常终止或崩溃,系统会将程序当时的状态记录下来,保存在一个 Core 文件中,这种机制称为 Core Dump,又称“核心转储”。Core Dump 机制记录了程序异常时的内存数据、寄存器状态以及运行堆栈等信息,开发人员可以使用调试工具分析 Core 文件来快速定位程序异常原因。

  • Ruid 实际用户 Id,指的是进程执行者是谁。

  • Euid 有效用户 Id,指进程执行时对文件的访问权限。

  • Suid 保存设置用户 Id,作为 Effective User Id 的副本。

  • Fsuid 目前进程的文件系统的用户识别码,一般情况下,文件系统的用户识别码(fsuid)与有效的用户识别码(euid)是相同的。

  • Cpus_allowed 进程可以使用 CPU 的亲和性掩码,因为我们指定为两块 CPU,所以这里就是 3,如果该进程指定为4个 CPU (如果有话),这里就是 F(1111)。

  • (四)通过命令 lsof 查看

    1. 查看 mysql 进程打开的文件列表:
    [root@htlwk0001host ~]# lsof -c mysqlCOMMAND     PID  USER   FD   TYPE             DEVICE  SIZE/OFF      NODE NAME
    mysqld  1064381 mysql  cwd    DIR              253,1      4096    636744 /var/lib/mysql
    mysqld  1064381 mysql  rtd    DIR              253,1       244       128 /
    mysqld  1064381 mysql  txt    REG              253,1 251816000  51228705 /usr/sbin/mysqld
    mysqld  1064381 mysql  mem    REG              253,1    553480  50342901 /usr/lib64/libpcre2-8.so.0.7.1

    如上所示,如果数据库已经启动了,则可以查询到一堆被打开的文件,否则查询不到任何文件。

    1. 查看数据库默认端口 3306 的使用情况:
    [root@htlwk0001host ~]# lsof -i:3306COMMAND     PID USER   FD   TYPE   DEVICE SIZE/OFF NODE NAME
    java    1050299 root   72u  IPv6 19482407      0t0  TCP htlwk0001host:37380->47.114.59.224:mysql (CLOSE_WAIT)java    1050299 root   78u  IPv6 19482908      0t0  TCP htlwk0001host:37470->47.114.59.224:mysql (CLOSE_WAIT)

    从上面的查询结果可以看出,进程 java 已经关闭和 MySQL 服务器的连接,数据库所在的主机地址是:47.114.59.224,端口名称:mysql,端口状态:CLOSE_WAIT。

    数据库服务器开启后,查看端口 3306 的使用情况,如下:

    [root@htlwk0001host ~]# lsof -i:3306COMMAND     PID  USER   FD   TYPE   DEVICE SIZE/OFF NODE NAME
    java    1050398  root   72u  IPv6 19485111      0t0  TCP htlwk0001host:37978->47.114.59.224:mysql (ESTABLISHED)java    1050398  root   78u  IPv6 19482585      0t0  TCP htlwk0001host:37480->47.114.59.224:mysql (CLOSE_WAIT)java    1050398  root   80u  IPv6 19485118      0t0  TCP htlwk0001host:37980->47.114.59.224:mysql (ESTABLISHED)java    1050398  root   81u  IPv6 19485120      0t0  TCP htlwk0001host:37982->47.114.59.224:mysql (ESTABLISHED)java    1050398  root   82u  IPv6 19484462      0t0  TCP htlwk0001host:37984->47.114.59.224:mysql (ESTABLISHED)java    1050398  root   83u  IPv6 19484463      0t0  TCP htlwk0001host:37986->47.114.59.224:mysql (ESTABLISHED)java    1050398  root   84u  IPv6 19484464      0t0  TCP htlwk0001host:37988->47.114.59.224:mysql (ESTABLISHED)java    1050398  root   85u  IPv6 19484465      0t0  TCP htlwk0001host:37990->47.114.59.224:mysql (ESTABLISHED)java    1050398  root   86u  IPv6 19484466      0t0  TCP htlwk0001host:37992->47.114.59.224:mysql (ESTABLISHED)java    1050398  root   87u  IPv6 19484467      0t0  TCP htlwk0001host:37994->47.114.59.224:mysql (ESTABLISHED)mysqld  1068848 mysql    4u  IPv6 19485112      0t0  TCP htlwk0001host:mysql->47.114.59.224:37978 (ESTABLISHED)mysqld  1068848 mysql   26u  IPv6 19485094      0t0  TCP *:mysql (LISTEN)mysqld  1068848 mysql   49u  IPv6 19485119      0t0  TCP htlwk0001host:mysql->47.114.59.224:37980 (ESTABLISHED)mysqld  1068848 mysql   50u  IPv6 19485121      0t0  TCP htlwk0001host:mysql->47.114.59.224:37982 (ESTABLISHED)mysqld  1068848 mysql   51u  IPv6 19485122      0t0  TCP htlwk0001host:mysql->47.114.59.224:37984 (ESTABLISHED)mysqld  1068848 mysql   52u  IPv6 19485123      0t0  TCP htlwk0001host:mysql->47.114.59.224:37986 (ESTABLISHED)mysqld  1068848 mysql   53u  IPv6 19485124      0t0  TCP htlwk0001host:mysql->47.114.59.224:37988 (ESTABLISHED)

    (五)使用命令 netstat 查看

    数据库启动后,使用命令 netstat 查看数据库服务端默认端口 3306 的使用情况:

    [root@htlwk0001host ~]# netstat -an | grep ':3306'tcp6       0      0 :::3306                 :::*                    LISTEN     
    tcp6       0      0 172.19.116.91:3306      47.114.59.224:37978     ESTABLISHED
    tcp6       0      0 172.19.116.91:37982     47.114.59.224:3306      ESTABLISHED
    tcp6       0      0 172.19.116.91:3306      47.114.59.224:37990     ESTABLISHED
    tcp6       0      0 172.19.116.91:37988     47.114.59.224:3306      ESTABLISHED
    tcp6       0      0 172.19.116.91:3306      47.114.59.224:37992     ESTABLISHED

    从上面的查询结果看,我们看这条:tcp6 0 0 172.19.116.91:37982 47.114.59.224:3306 ESTABLISHED ,可以得知数据库服务端与客户端保持连接状态。

    数据库关闭后,我们再使用命令 netstat 查看端口 3306 的使用情况:

    [root@htlwk0001host ~]# netstat -an | grep ':3306'tcp6       0      0 172.19.116.91:3306      47.114.59.224:37978     FIN_WAIT2  
    tcp6       1      0 172.19.116.91:37982     47.114.59.224:3306      CLOSE_WAIT 
    tcp6       0      0 172.19.116.91:3306      47.114.59.224:37990     FIN_WAIT2  
    tcp6       1      0 172.19.116.91:37988     47.114.59.224:3306      CLOSE_WAIT 
    tcp6       0      0 172.19.116.91:3306      47.114.59.224:37992     FIN_WAIT2  
    tcp6       0      0 172.19.116.91:3306      47.114.59.224:38006     FIN_WAIT2  
    tcp6       0      0 172.19.116.91:3306      47.114.59.224:38004     FIN_WAIT2  
    tcp6       1      0 172.19.116.91:38008     47.114.59.224:3306      CLOSE_WAIT 
    tcp6       0      0 172.19.116.91:3306      47.114.59.224:37994     FIN_WAIT2  
    tcp6       0      0 172.19.116.91:3306      47.114.59.224:38010     FIN_WAIT2  
    tcp6       1      0 172.19.116.91:37984     47.114.59.224:3306      CLOSE_WAIT

    (六)使用命令 service 查看数据库状态

    [root@htlwk0001host ~]# service mysqld statusRedirecting to /bin/systemctl status mysqld.service
    ● mysqld.service - MySQL Server
       Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
       Active: active (running) since Fri 2021-04-23 16:11:01 CST; 8s ago
         Docs: man:mysqld(8)
               http://dev.mysql.com/doc/refman/en/using-systemd.html
      Process: 1069004 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited, status=0/SUCCESS)
      Process: 1068982 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
     Main PID: 1069006 (mysqld)
        Tasks: 46 (limit: 23070)
       Memory: 214.2M
       CGroup: /system.slice/mysqld.service
               └─1069006 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid
    
    4月 23 16:10:59 htlwk0001host systemd[1]: Starting MySQL Server...
    4月 23 16:11:01 htlwk0001host systemd[1]: Started MySQL Server.

    从上述的查询结果可以看到: Active: active (running) since Fri 2021-04-23 16:11:01 CST; 8s agoactive(running),说明数据库处于运行中的状态。

    (七)使用命令 systemctl 查看数据库状态

    [root@htlwk0001host ~]# /bin/systemctl status mysqld.service

    命令 service 其实就是调命令 systemctl 查询的,所以命令 systemctl 的查询结果和命令 service 相同,就不展示了。

    推荐学习:《MySQL视频教程

    以上がLinuxでmysqlサービスを停止するコマンドは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

    声明:
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。