検索
ホームページデータベースmysql チュートリアルserviceコマンドを使ったmysqlの起動と停止方法の紹介

serviceコマンドを使ったmysqlの起動と停止方法の紹介

Mar 22, 2019 am 11:26 AM
Linuxの運用と保守mysqlpidserviceログ

この記事では、service コマンドを使用して mysql を起動および停止する方法を紹介します。一定の参考値があります。必要な友人は参考にしてください。お役に立てれば幸いです。

mysql をインストールした後、毎回起動したり停止したりするのは非常に面倒で、忘れずにネットで検索すると、みんな Service を使ってサービスを管理していることがわかり、試してみたところ、本当にうまくいきました。誰もがこの方法で使用することをお勧めします。

mysql サービスの起動と停止

# 启动
/usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --log-error=/var/log/mysqld.log --pid-file=/var/run/mysqld/mysqld.pid --socket=/tmp/mysql.sock
# 停止
kill `cat /usr/local/mysql/var/mysqld.pid`

この方法で起動と停止を行うには、mysql のパスと pid の保存場所を覚えておく必要があるため、さらに面倒です。

service システムサービス管理

service コマンドは、システムサービスの開始 (start)、停止 (stop)、再起動 (restart)、状態の表示 (status) などを管理するために使用されます。 。サービス コマンド自体は、タスクを完了するためにスクリプトを簡単に呼び出すために使用されるシェル スクリプトであり、/etc/init.d/ ディレクトリ内で指定されたサービス スクリプトを検索します。

関連するコマンドは次のとおりです:

chkconfig: サービスの実行レベルの表示と設定に使用されます

ntsysv: サービスの自動開始の設定に使用されます

サービスは、指定されたサービス (System V 初期スクリプトと呼ばれる) を実行し、2 つの環境変数 LANG と TERM のみを保持し、現在のパスを / に設定します。サービス スクリプトをサービスによって管理したい場合は、少なくとも開始コマンドと停止コマンドをサポートし、スクリプトを /etc/init.d/ ディレクトリに保存する必要があります。

サービスの使用方法

## 命令格式
Usage: service  | --status-all | [ service_name [ command | --full-restart ] ]

# 查看指定服务的命令行使用帮助
service <service>
## mysqld 举例
$ service mysqld
Usage: mysqld  {start|stop|restart|reload|force-reload|status}  [ MySQL server options ]

# 启动、停止、重启指定服务
service <service> start|stop|restart
## mysqld举例restart,即先执行stop再执行start命令
$ service mysqld restart
Shutting down MySQL..                                      [  OK  ]
Starting MySQL.                                            [  OK  ]

# 显示指定服务的状态
$ service mysqld status
MySQL running (27390)                                      [  OK  ]

# 显示所有服务的状态
service --status-all

# 查看系统服务列表,以及每个服务的运行级别
chkconfig --list

# 设置指定服务开机时是否自动启动
chkconfig <service> on|off

# 以全屏幕文本界面设置服务开机时是否自动启动
# 必须以root启动,空格切换状态,tab切换按钮,上下鼠标移动光标
ntsysv</service></service></service>

mysqld の例を使用することに加えて、ホスト名、IP アドレス、およびその他の情報を変更する場合、有効にするためにネットワークを再起動する必要があることがよくあります。

service network status|restart

サービスを使用して mysqld サービスを管理する

基本的な知識はすでに理解しているので、変換を開始できます。まず、mysql.server を見つける必要があります。インストールディレクトリ内のファイル。

$ locate mysql.server
/usr/local/mysql/support-files/mysql.server

このファイルはインストール中に初期化されます。実際には、さまざまな機能を実行するためのさまざまなパラメータの入力をサポートするスクリプト ファイルです。その開始関数:

# 根据输入的命令执行不同的脚本,首先判断是否为start
case "$mode" in
  'start')
    # Start daemon

    # Safeguard (relative paths, core dumps..)
    cd $basedir

    echo $echo_n "Starting MySQL"
    # 查看该bin/mysqld_safe命令是否存在,如果不存在,就直接报错:找不到
    if test -x $bindir/mysqld_safe
    then
      # Give extra arguments to mysqld with the my.cnf file. This script
      # may be overwritten at next upgrade.
      # 直接执行mysqld_safe命令,并传入参数,然后创建pid文件
      $bindir/mysqld_safe --datadir="$datadir" --pid-file="$mysqld_pid_file_path" $other_args >/dev/null &
      wait_for_pid created "$!" "$mysqld_pid_file_path"; return_value=$?

      # Make lock for RedHat / SuSE
      if test -w "$lockdir"
      then
        touch "$lock_file_path"
      fi

      exit $return_value
    else
      log_failure_msg "Couldn't find MySQL server ($bindir/mysqld_safe)"
    fi
    ;;

  'stop')

を表示し、それをコピーします。 /tmp/init.d/ ディレクトリ:

cp /usr/local/mysql/support-files/mysql.server /tmp/init.d/mysqld

この時点で、サービスを直接呼び出して開始できます:

service mysqld start

いくつかの問題が発生しました

上記の理論は次のとおりです。非常に簡単ですが、起動プロセス中にいくつかの問題が発生しました。問題を解決する最も簡単な方法は、Google でログ ファイルを確認することです。これら 2 つの方法により、問題をすばやく見つけて解決できます。

構成ファイルは無視されます

起動時のエラー メッセージを直接確認してください:

$ service mysqld start
Warning: World-writable config file '/etc/my.cnf' is ignored
Starting MySQL.Warning: World-writable config file '/etc/my.cnf' is ignored

エラーの理由を直接確認してください。これは、グローバルに書き込み可能な構成ファイルが無視されていることを示しています。 。このエラーは、設定ファイルはすべてのユーザーが変更できるため、悪意のある改ざんの可能性があるため、このファイルの設定は導入されず、無視されることを意味します。

解決策は、ユーザーおよびユーザー グループが読み取りおよび書き込み可能で、他のユーザーのみが読み取りおよび書き込みできないようにファイルを変更することです:

chmod 664 /etc/my.cnf

PID ファイルを作成できません

エラー メッセージを直接参照してください:

$ service mysqld start
Starting MySQL.The server quit without updating PID file (/usr/var/mysql/var/mysqld.pid).

エラーの理由は、PID ファイルが更新されていないために、MySQL の起動時に予期せず終了したことを示しています。

現時点では、理解できない人もいるかもしれません。問題ありません。エラー ログを直接見てみましょう:

2019-03-21 22:29:45 32896 [ERROR] /usr/local/mysql/bin/mysqld: Can't create/write to file '/usr/var/mysql/var/mysqld.pid' (Errcode: 2 - No such file or directory)
2019-03-21 22:29:45 32896 [ERROR] Can't start server: can't create PID file: No such file or directory

このログには、mysqld.pid ファイルを実行できないことが明確に示されています。作成されました、または権限の問題です、またはパスが存在しません。後でパスが間違って書かれていることがわかりましたので、正しいパスに変更してください。

エラー ログ パスの設定:

$ vim my.cnf
[mysqld]
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
pid-file = /usr/var/mysql/var/mysqld.pid
log-error = /user/local/mysql/log/mysql.err

log コマンドは放棄されました

上記の問題を解決し、実行を続けましたが、同じエラー メッセージが見つかりましたが、ログ ファイルはは異なりました:

$ service mysqld start
Starting MySQL.The server quit without updating PID file (/usr/var/mysql/var/mysqld.pid).

# 日志文件
2019-03-21 22:37:33 0 [ERROR] /usr/local/mysql/bin/mysqld: ambiguous option '--log=/usr/local/mysql/log/mysql.log' (log-bin, log_slave_updates)
2019-03-21 22:37:33 0 [ERROR] Aborting

ログ エラー メッセージが見つかりました: 曖昧なオプション --log、これはよくわかりません。Google で検索すると理由がわかります: --log コマンドは次のように放棄されました。長い間使用されてきましたが、現在は代わりに --general-log を使用してください。 my.cnf 構成ファイルを変更するだけです:

$ vim my.cnf
[mysqld]
general-log = /user/local/mysql/log/mysql.log

正常に開始

上記の問題を解決した後、最終的に正常に開始できます。この時点で、簡単に開始、停止、リロードできます。 mysqld サービス: 現在:

$ service mysqld start
Starting MySQL.                                            [  OK  ]

要約

Service サービス管理ツールは、アプリケーションを迅速に開始および停止するのに役立ちます。 Mysql を開始するプロセスでは、ログ ファイルの表示と Google での検索をマスターすることが私たちにとって最大の助けになります。

この記事はここで終了しました。その他のエキサイティングなコンテンツについては、PHP 中国語 Web サイトの MySQL チュートリアル ビデオ 列に注目してください。

以上がserviceコマンドを使ったmysqlの起動と停止方法の紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事はsegmentfaultで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。
MySQL Index Cardinalityはクエリパフォーマンスにどのように影響しますか?MySQL Index Cardinalityはクエリパフォーマンスにどのように影響しますか?Apr 14, 2025 am 12:18 AM

MySQLインデックスのカーディナリティは、クエリパフォーマンスに大きな影響を及ぼします。1。高いカーディナリティインデックスは、データ範囲をより効果的に狭め、クエリ効率を向上させることができます。 2。低カーディナリティインデックスは、完全なテーブルスキャンにつながり、クエリのパフォーマンスを削減する可能性があります。 3。ジョイントインデックスでは、クエリを最適化するために、高いカーディナリティシーケンスを前に配置する必要があります。

MySQL:新規ユーザー向けのリソースとチュートリアルMySQL:新規ユーザー向けのリソースとチュートリアルApr 14, 2025 am 12:16 AM

MySQL学習パスには、基本的な知識、コアの概念、使用例、最適化手法が含まれます。 1)テーブル、行、列、SQLクエリなどの基本概念を理解します。 2)MySQLの定義、作業原則、および利点を学びます。 3)インデックスやストアドプロシージャなどの基本的なCRUD操作と高度な使用法をマスターします。 4)インデックスの合理的な使用や最適化クエリなど、一般的なエラーのデバッグとパフォーマンス最適化の提案に精通しています。これらの手順を通じて、MySQLの使用と最適化を完全に把握できます。

実際のmysql:例とユースケース実際のmysql:例とユースケースApr 14, 2025 am 12:15 AM

MySQLの実際のアプリケーションには、基本的なデータベース設計と複雑なクエリの最適化が含まれます。 1)基本的な使用法:ユーザー情報の挿入、クエリ、更新、削除など、ユーザーデータの保存と管理に使用されます。 2)高度な使用法:eコマースプラットフォームの注文や在庫管理など、複雑なビジネスロジックを処理します。 3)パフォーマンスの最適化:インデックス、パーティションテーブル、クエリキャッシュを使用して合理的にパフォーマンスを向上させます。

MySQLのSQLコマンド:実用的な例MySQLのSQLコマンド:実用的な例Apr 14, 2025 am 12:09 AM

MySQLのSQLコマンドは、DDL、DML、DQL、DCLなどのカテゴリに分割でき、データベースとテーブルの作成、変更、削除、データの挿入、更新、削除、複雑なクエリ操作の実行に使用できます。 1.基本的な使用には、作成可能な作成テーブル、INSERTINTO INSERTデータ、クエリデータの選択が含まれます。 2。高度な使用法には、テーブル結合、サブQueries、およびデータ集約のためのグループに参加します。 3.構文エラー、データ型の不一致、許可の問題などの一般的なエラーは、構文チェック、データ型変換、許可管理を介してデバッグできます。 4.パフォーマンス最適化の提案には、インデックスの使用、フルテーブルスキャンの回避、参加操作の最適化、およびデータの一貫性を確保するためのトランザクションの使用が含まれます。

InnoDBは酸コンプライアンスをどのように処理しますか?InnoDBは酸コンプライアンスをどのように処理しますか?Apr 14, 2025 am 12:03 AM

INNODBは、ロックメカニズムとMVCCを通じて、非論的、一貫性、および分離を通じて原子性を達成し、レッドログを介した持続性を達成します。 1)原子性:Undologを使用して元のデータを記録して、トランザクションをロールバックできることを確認します。 2)一貫性:行レベルのロックとMVCCを介してデータの一貫性を確保します。 3)分離:複数の分離レベルをサポートし、デフォルトでrepeatable -readが使用されます。 4)持続性:Redologを使用して修正を記録し、データが長時間保存されるようにします。

MySQLの場所:データベースとプログラミングMySQLの場所:データベースとプログラミングApr 13, 2025 am 12:18 AM

データベースとプログラミングにおけるMySQLの位置は非常に重要です。これは、さまざまなアプリケーションシナリオで広く使用されているオープンソースのリレーショナルデータベース管理システムです。 1)MySQLは、効率的なデータストレージ、組織、および検索機能を提供し、Web、モバイル、およびエンタープライズレベルのシステムをサポートします。 2)クライアントサーバーアーキテクチャを使用し、複数のストレージエンジンとインデックスの最適化をサポートします。 3)基本的な使用には、テーブルの作成とデータの挿入が含まれ、高度な使用法にはマルチテーブル結合と複雑なクエリが含まれます。 4)SQL構文エラーやパフォーマンスの問題などのよくある質問は、説明コマンドとスロークエリログを介してデバッグできます。 5)パフォーマンス最適化方法には、インデックスの合理的な使用、最適化されたクエリ、およびキャッシュの使用が含まれます。ベストプラクティスには、トランザクションと準備された星の使用が含まれます

MySQL:中小企業から大企業までMySQL:中小企業から大企業までApr 13, 2025 am 12:17 AM

MySQLは、中小企業に適しています。 1)中小企業は、顧客情報の保存など、基本的なデータ管理にMySQLを使用できます。 2)大企業はMySQLを使用して、大規模なデータと複雑なビジネスロジックを処理して、クエリのパフォーマンスとトランザクション処理を最適化できます。

Phantomの読み取りとは何ですか?Innodbはどのようにそれらを防ぐ(次のキーロック)?Phantomの読み取りとは何ですか?Innodbはどのようにそれらを防ぐ(次のキーロック)?Apr 13, 2025 am 12:16 AM

INNODBは、次のキーロックメカニズムを通じてファントムの読み取りを効果的に防止します。 1)Next-KeyLockingは、Row LockとGap Lockを組み合わせてレコードとギャップをロックして、新しいレコードが挿入されないようにします。 2)実際のアプリケーションでは、クエリを最適化して分離レベルを調整することにより、ロック競争を削減し、並行性パフォーマンスを改善できます。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

DVWA

DVWA

Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。