シェルでパスワードなしでMySQLデータベースに素早くログインする方法

シェルでパスワードなしでMySQLデータベースに素早くログインする方法

背景

Shell の mysql-client を介して MySQL データベースにログインする場合、常にパスワードを何度も入力する必要があり、非常に面倒です。

さらに、ルート パスワードが非常にランダムである場合 (LastPass が適切な選択です)、MySQL データベースに 1 回ログインするコストは非常に高くなります。

通常、次のようにデータベースにログインします。

ルート@imlonghao:~#mysql -uroot -p
パスワードを入力してください:

では、データベースに安全かつ簡単かつ便利にログインする方法はあるのでしょうか?

方法

もちろん答えは「はい」です。MySQL はすでにこの問題について考えてくれています。

参考リンク: パスワードセキュリティに関するエンドユーザーガイドライン

.my.cnfを使用して素早くログインする

~/ ディレクトリに .my.cnf ファイルを作成します。もちろん、このファイルがすでにある場合は、それを変更するだけです。

私は個人的にvimを使うのが好きなので、これを実行できます

vim ~/.my.cnf

次に、ファイルに次の情報を記入します。

[クライアント]
パスワード=あなたのパスワード
ユーザー=あなたのユーザー

注: your_pass と your_user を、ログインするユーザーのパスワードとユーザー名に変更します。

次に例を示します。

[クライアント]
パスワード=mysqlrootpassword123321
ユーザー=root

すでに .my.cnf ファイルがある場合は、[client] フィールドに情報を入力するだけです。

注意:パスワードは .my.cnf ファイルにプレーンテキストで書き込まれるため、このファイルのファイル権限の設定には注意する必要があります。

root@imlonghao:~# chmod 400 ~/.my.cnf

保存後、mysql コマンドを使用して MySQL データベースに直接ログインできます。

注:デフォルトの ~/.my.cnf 以外の設定ファイルを指定する必要がある場合は、 --defaults-file=file_nameパラメータを使用する必要があります。例:

root@imlonghao:~# mysql --defaults-file=/home/imlonghao/mysql-opts

環境変数MYSQL_PWDを使用して素早くログインする

MySQLはまず環境変数のパラメータを実行パラメータとして使用します。

root@imlonghao:~# MYSQL_PWD=your_passをエクスポートします

設定後は、再度MySQLにログインする際にパスワードを入力する必要がありません。

ただし、現在のシェルを終了すると、この環境変数は消えてしまうことに注意してください。

さらに重要なのは、シェルに入力したコマンドは自動的に保存され、入力したコマンドを履歴で確認できることです。

要約する

上記はこの記事の全内容です。この記事の内容が皆さんの勉強や仕事に少しでもお役に立てれば幸いです。ご質問があれば、メッセージを残してコミュニケーションしてください。123WORDPRESS.COM をご愛顧いただき、ありがとうございます。

以下もご興味があるかもしれません:
  • HBASE でよく使用されるシェル コマンド、追加、削除、変更、クエリ メソッド
  • MySQL のスケジュールされたバックアップ、削除、および回復機能を実装するシェル スクリプト
  • MySQLクエリ結果をシェルで簡単に処理する方法
  • シェルを使用してMySQLデータバックアップスクリプトを作成する
  • シェルスクリプトを使用したMySQLデータベースの自動バックアップ
  • シェルスクリプトを使用して、mysql を追加、削除、変更、チェックし、my.cnf を構成します。

<<:  nginx プロキシでの複数の 302 応答の解決策 (nginx Follow 302)

>>:  iframeをカプセル化するvueコンポーネントを開発する

推薦する

Docker Compose ワンクリック ELK デプロイ方式の実装

インストールFilebeat は、より軽量でより安全なため、Logstash-Forwarder に...

MySQL 8.0.21 無料インストール版 設定方法 グラフィックチュートリアル

MySQLをインストールする6つの手順(インストールパッケージのみがインストール場所を選択できます)...

JSブラウザイベントモデルの詳細な説明

目次イベントとは簡単な例イベントをバインドする方法フレームワーク内のイベントイベントオブジェクトイベ...

Node.js での組み込みモジュールとカスタムモジュールの実装

1. コモンズCommonjsはNode.jsのカスタムモジュールですCommonjs 仕様は、Ja...

ウェブサイトのフッター沈下現象に対する3つの解決策を詳しく解説

背景多くのウェブサイトのデザインは、一般的にコンテンツ+フッターの2つの部分で構成されています。コン...

データバインディングとリストデータの表示にはVue3を使用する

目次1. Vue2との比較1. Vue3の新機能2. Vue2とVue3の応答原理の比較3. 配列の...

Linux/Docker で System.Drawing.Common を使用する

序文プロジェクトを .net core に移行した後、 System.Drawing.Commonコ...

MySQL 4G メモリ サーバー構成の最適化

会社のウェブサイトのアクセス数が増えてくると(1日10万PV以上)、当然MySQLがボトルネックにな...

複数の X 軸を使用して 7 日間の天気予報を実現するための Echarts サンプル コード

目次UIデザインEcharts の例の効果序文サンプルコード最終結果UIデザイン Echarts の...

Linux システムでの CPU 使用率が高い場合のトラブルシューティングのアイデアと解決策

序文Linux 運用保守エンジニアとして、日々の業務の中で Linux サーバーの CPU 負荷が ...

オンラインMySQL自動増分IDが使い果たされた場合の対処方法

目次テーブル定義の自動増分 ID InnoDBシステムはrow_idを自動的に増加させるシドInno...

CSS3 フィルターを使用して PNG 画像の色を変更するサンプル コード

この方法は、CSS3のdrop-shadow filterを使用して、png画像の不透明部分に任意の...

Linux での i3 ウィンドウ マネージャーの設定と使用に関するチュートリアル

この記事では、Fedora 28 に i3 をインストールして簡単に設定する方法を説明します。 1....

興味深いカウントダウン効果を実現するjs

js興味深いカウントダウンケース、参考までに、具体的な内容は次のとおりですコード: <!DO...