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の使用に関する簡単な説明

推薦する

CSSは背景画像の画面適応を実現する

ログインページなどのホームページを作成する場合、大きな背景画像を配置する必要があり、さまざまな画面の...

Dockerで複数のSpringbootを実行するための詳細なチュートリアル

Dockerは複数のSpringbootを実行する1番目: ポートマッピング 2番目: メモリサイズ...

MySQL でよく使われる型変換関数の概要 (推奨)

1. Concat関数。よく使用される接続文字列: concat 関数。たとえば、SQLクエリ条件...

Vue における nextTick の役割といくつかの簡単な使用シナリオ

目的nextTickの役割といくつかの簡単な使用シナリオを理解する文章その機能は何ですか?遅延コール...

登録フォームのデザインルール

随分前に「Patterns for Sign Up & Ramp Up」を読み終えました。今...

データベースを削除せずにMySQLのすべてのテーブルを素早く削除する方法

この記事では、例を使用して、データベースを削除せずに MySQL 内のすべてのテーブルをすばやく削除...

CentOS7 で jar アプリケーションの起動を設定する方法

プロジェクトの展開中に遭遇した落とし穴Zhihudemo を展開する際、Jenkins などの自動展...

Docker を使用した war パッケージ プロジェクトのデプロイの実装

Docker で war をデプロイするには、コンテナを使用する必要があります。ここでは tomca...

Linux で開いているファイルが多すぎる問題を解決する方法

原因は、プロセスが特定の時点でシステム制限を超える数のファイルと通信リンクを開くことです。 システム...

LNMP と phpMyAdmin を Docker にデプロイする方法

環境準備:複数のコンテナに基づいてホストに lnmp をデプロイします。 nginx サービス: 1...

Apple Watchのインタラクションデザインにおける4つの全く異なる体験が明らかに

今日も Watch アプリのデザインに関する話です。私はケーススタディが大好きなので、同じトピックを...

Linux環境にMySQLデータベースをインストールする詳細なチュートリアル

1. データベースをインストールする1) yum -y install mysql-server (...

ウェブデザインの達人がよく使うレスポンシブフレームワークを共有する(要約)

この記事では、Web デザインの達人がよく使用するレスポンシブ フレームワーク (概要) を紹介し、...

HTML マウス CSS コントロール

一般的に、マウスは上向きの斜め矢印として表示され、テキストの上に移動すると垂直線になり、ハイパーリン...

MySQL の最初のインストールが成功した後にパスワードを初期化する手順

ファイルをディレクトリに解凍しますこれは解凍後のディレクトリですmy.iniファイルを入力しますダブ...