Linuxでコマンドラインを使用してMySQLデータベースをリストする方法
LinuxターミナルでMySQLデータベースをリストする方法
ターミナルを通じてMySQLデータベースをリストすることは、Linuxベースのホスティング環境、例えばVPSや専用サーバーを管理するための重要なスキルです。このガイドでは、すべてのデータベースを表示し、結果をフィルタリングし、問題をトラブルシューティングする方法を簡素化しています。実用的な例とヒントを交えて、SSH環境で作業するシステム管理者やウェブサイトオーナーに最適です。
なぜMySQLデータベースをリストするのか?
以下の理由から必要になることがあります:
別々のデータベースを持つ複数のウェブサイトを管理する。
データベースの作成を確認する。
未使用のデータベースをトラブルシューティングまたはクリーンアップする。
バックアップや移行の準備をする。
ステップ 1: MySQL CLIにアクセスする
コマンドラインを通じてMySQLと対話するには、まずMySQLシェルにログインします:
mysql -u root -p
- -u root — MySQLユーザーを指定します。必要に応じてrootを別のユーザーに置き換えてください。
- -p — パスワードを求められます(セキュリティ上の理由から、コマンドに直接パスワードを含めないでください)。
💡 ヒント: MySQLのrootユーザーにパスワードが設定されていない場合(本番環境では推奨されません)、-pをスキップできます。
ステップ 2: すべてのデータベースをリストする
MySQLシェル内に入ったら、単に次を実行します:
SHOW DATABASES;
出力は次のようになります:
+--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | sys | | your_database_name | +--------------------+
各行はMySQLサーバーに保存されているデータベースを表します。これらの中には(information_schemaやperformance_schemaのように)システムデータベースがあり、変更しないでください。
MySQLを開かずにデータベースをリストする
MySQLプロンプトを開かずにシェルから直接データベースをリストしたい場合は、次を使用します:
mysql -u root -p -e 'SHOW DATABASES;'
これはスクリプトや自動化タスクに便利です。
特定のデータベース名をフィルタリングまたは検索する
出力をフィルタリングして特定のデータベース名を見つけるには、コマンドをgrepと組み合わせることができます:
mysql -u root -p -e 'SHOW DATABASES;' | grep your_keyword
your_keywordをデータベース名の一部に置き換えてください。このトリックは、複数のクライアントやアプリケーションを管理する際に便利です。
Linux上のMySQLデータベースはどこに保存されているか?
物理的なストレージについて興味がある場合、MySQLデータベースは通常次の場所に保存されています:
/var/lib/mysql/
各フォルダーはデータベース名に対応しています。 ここで手動で何かを変更または削除しないでください — 自分が何をしているのか正確にわかっている場合を除き、常にSQLコマンドまたは管理ツールを使用してください。
一般的なエラーと修正
エラー: ‘root’@’localhost’のユーザーに対するアクセスが拒否されました
- ユーザー名とパスワードを再確認してください。
- MySQLサービスが実行中であることを確認してください:
sudo systemctl status mysql
エラー: コマンド’mysql’が見つかりません
- MySQLクライアントツールをインストールします:
sudo apt install mysql-client
結論
ターミナルでMySQLデータベースをリストすることは迅速で、Linuxホスティング環境を管理するために不可欠です。
SHOW DATABASES;を使用したり、
grepでフィルタリングしたり、例に示したようにスクリプトを作成することで、データベースを効率的に確認および管理できます。AvaHostの信頼性の高いVPSまたは専用サーバーを使用すれば、これらの技術によりデータベースタスクが安全で迅速、かつ効率的に行えます。


