MySQLの起動と接続方法の例分析

MySQLの起動と接続方法の例分析

この記事では、例を使用して MySQL を起動して接続する方法について説明します。ご参考までに、詳細は以下の通りです。

MySQL の操作は 2 つの部分で構成されます。1 つはサーバー側プログラム mysqld で、もう 1 つはクライアント側プログラム mysql です。 mysqld が起動されているときのみ、mysql クライアントはそれに接続できます。 mysqld を起動する方法は 4 つあり、mysql に接続する方法も 4 つあります。

mysqldの起動方法

方法 1: mysqld

mysqld は実行可能なコマンドであり、サーバー側プログラムでもあります。このプログラムを起動することは、MySQL サーバー側プロセスを起動することと同じです。しかし、このコマンドは一般的には使用されず、mysqld_safe コマンドがよく使用されます。

コマンド形式:
mysqld [オプション]

のように:
mysqld --defaults-file=/etc/my.cnf

ヘルプを表示:
mysqld --verbose --help

方法 2: mysqld_safe

mysqld_safe は、mysqld を間接的に参照する起動スクリプトです。 mysqld_safe スクリプトを起動すると、MySQL サーバー プロセスが起動され、mysqld を監視するデーモン プロセスも起動されます。mysqld サービスがハングアップすると、mysqld サービスが直ちに再起動されます。

さらに、mysqld_safe 起動方法では、実行中のプロセスのエラー ログやその他の診断情報もファイルに出力されるため、トラブルシューティングや問題の解決が容易になります。この起動方法は最も一般的なものです。

コマンド形式:
mysqld_safe [オプション] &

のように:
mysqld_safe --defaults-file=/etc/my.cnf &

ヘルプを表示:
mysqld_safe --ヘルプ

方法3: mysqld_multi

単一のホスト上で複数の MySQL インスタンスを実行する必要がある場合は、mysqld_multi を使用してさまざまな mysqld サービスを管理できます。この起動方法は、MySQL クラスターに非常に役立ちます。

コマンド形式:
mysqld_multi [オプション] {開始|再ロード|停止|レポート} [GNR、GNR、GNR...]

ヘルプを表示:
mysqld_multi --ヘルプ

方法 4: mysql.server

mysql.server も起動スクリプトです。間接的に mysqld_safe を呼び出します。mysql.server を呼び出すときに、最後に start パラメータを指定することでサーバー プログラムを起動できます。この起動モードは通常、RPM パッケージを通じてインストールされた MySQL によって生成されます。

mysql.server ファイルは実際にはリンク ファイルです。実際のファイルは ../support-files/mysql.server です。

コマンド形式:
mysql.server の開始|再起動|停止|ステータス

MySQL接続方法

方法 1: TCP/IP ソケット

Unix 系および Windows オペレーティング システムの両方で使用できます。TCP/IP ソケットはネットワーク プロトコルです。MySQL サーバーが起動すると、ポートをリッスンします。クライアントが接続を開始すると、MySQL サーバーのホスト IP+ポートを指定して接続できます。

この通信モードでは、MySQL サーバーとクライアントを異なるホストに展開することができ、これは最も一般的に使用される接続方法でもあります。

mysql -h ホストIP -P ポート -u ユーザー -p
のように:
mysql -h127.0.0.1 -P3306 -uroot -p

MySQLの起動と接続方法

方法2: Unixソケット

Unix 系オペレーティング システムでのみ使用できます。Unix ソケットはネットワーク プロトコルではないため、MySQL サーバーとクライアントが同じホスト上にある場合にのみ使用できます。

クライアント プログラムの起動時にホスト名を localhost として指定するか、起動パラメータとして --protocol=socket を指定すると、サーバー プログラムとクライアント プログラムは Unix ドメイン ソケット ファイルを介して通信できるようになります。

MySQL サーバー プログラムがリッスンするデフォルトの Unix ドメイン ソケット ファイル パスは /tmp/mysql.sock であり、クライアント プログラムもデフォルトでこの Unix ドメイン ソケット ファイルに接続します。

1. mysql -uroot -p // デフォルトではソケット経由で通信します。デフォルトは localhost です。
2. mysql -hlocalhost -uroot -p
3. mysql -S ソケットファイルパス -uroot -p
のように:
mysql -S /var/run/mysqld/mysqld.sock -uroot -p

MySQLの起動と接続方法

MySQLの起動と接続方法

MySQLの起動と接続方法

ソケットファイルの場所を表示します:
'socket' のような変数を表示します。

MySQLの起動と接続方法

方法3: 名前付きパイプ

これは Windows のようなオペレーティング システムでのみ使用でき、MySQL サーバーとクライアントが同じホスト上にある場合にのみ使用できます。

サーバー プログラムを起動するコマンドに --enable-named-pipe パラメータを追加し、クライアント プログラムを起動するコマンドに --pipe または --protocol=pipe パラメータを追加する必要があります。

–enable-named-pipe=オン/オフ;

方法4: 共有メモリ

これは Windows のようなオペレーティング システムでのみ使用でき、MySQL サーバーとクライアントが同じホスト上にある場合にのみ使用できます。

サーバー プログラムを起動するコマンドに --shared-memory パラメータを追加する必要があります。サーバーが正常に起動すると、共有メモリがローカル クライアント プログラムのデフォルトの接続方法になります。ただし、クライアント プログラムを起動するコマンドに --protocol=memory パラメータを追加して、通信に共有メモリを使用することを明示的に指定することもできます。

–共有メモリ=オン/オフ;

MySQL 関連のコンテンツに興味のある読者は、このサイトの次のトピックをチェックしてください: 「MySQL クエリ スキル」、「MySQL 共通関数の概要」、「MySQL ログ操作スキル」、「MySQL トランザクション操作スキルの概要」、「MySQL ストアド プロシージャ スキル」、および「MySQL データベース ロック関連スキルの概要」

この記事が皆様のMySQLデータベース設計に役立つことを願っています。

以下もご興味があるかもしれません:
  • MySQL の起動オプションとシステム変数の例の詳細な説明
  • CentOS 7.0 (mysql-5.7.21) で複数の MySQL インスタンスを起動する方法
  • MYSQL スロークエリとログの例の説明
  • MySQL で結果を選択して更新を実行する例のチュートリアル
  • あるテーブルからバッチデータをクエリし、それを別のテーブルに挿入する MySQL の完全な例
  • Springboot は MySQL 接続サンプルコードを設定します
  • MySQLで大きなテーブルを正常に削除する方法の詳細な説明
  • MySQL トリガーの使用シナリオとメソッドの例
  • MySQL でコミットされていないトランザクションを見つけるための SQL の例の簡単な分析
  • MySQLインスタンスが起動できない問題の分析と解決

<<:  JavaScript配列の一般的なメソッドの例のまとめ

>>:  React.FCとReact.Componentの使用に関する簡単な説明

推薦する

JavaScriptのプリミティブ値とラッパーオブジェクトの詳細な紹介

目次序文文章プリミティブ型プリミティブ値ラッパーオブジェクト物体コンストラクタ通常機能(関数)プリミ...

Mysql トランザクション分離レベルの読み取りコミットの詳細な説明

MySQL トランザクション分離レベルを表示する mysql> '%isolation...

MYSQL クエリの効率を向上させる 10 の SQL ステートメント最適化テクニック

MySQL データベースの実行効率はプログラムの実行速度に大きな影響を与えます。データベースの効率的...

Windows 環境での MySQL 8.0 のインストール、設定、アンインストール

ソフトウェアバージョンウィンドウズ: ウィンドウズ10 MySQL: mysql-8.0.17-wi...

vue3 のコンポーネントの互換性のない変更の詳細な説明

目次機能コンポーネント非同期コンポーネントの書き方とdefineAsyncComponentメソッド...

vueを使用して登録ページの効果を実現し、vueを使用してSMS認証コードログインを実現します

この記事の例では、登録ページの効果を実現するためのVueの具体的なコードを参考までに共有しています。...

Filebeat を使用して Nginx ログを収集する方法

Nginx ログは、ユーザーの住所の場所や行動プロファイルなどを分析するために使用できます。Elas...

JSコードコンパイラMonacoの使い方

序文私が必要としているのは、構文の強調表示、関数プロンプト、自動行折り返し、およびコードの折りたたみ...

HTML の順序付きリスト、順序なしリスト、定義リストに関する簡単な説明

順序付きリストXML/HTML コードコンテンツをクリップボードにコピー<オルタイプ= &qu...

表内のコンテンツオーバーフローのレイアウト方法について

コンテンツオーバーフローとは何ですか?実際、テキストが大量にある場合、コンテンツ領域がそれだけの長さ...

Linux インストール MySQL5.6.24 使用手順

Linux インストール MySQL ノート1. MySQL データベース サーバーをインストールす...

TypeScriptの基本型の詳細な説明

目次ブール型数値型文字列型文字列と数値を連結する未定義およびnull配列型タプル型列挙型あらゆるタイ...

MySQL 8.0.22 winx64 のインストールと設定のグラフィックチュートリアル

mysql 8.0.22 winx64のインストールと設定のグラフィックチュートリアルは参考までに、...

MySQL の binlog ログと、binlog ログを使用してデータを回復する方法を説明します。

ご存知のとおり、binlog ログは MySQL データベースにとって非常に重要です。万が一、データ...