現場実践|データベース管理

MySQLの基本操作入門
インフラエンジニアが知るべきDB管理コマンド

「DBはアプリエンジニアの仕事」と思っていませんか?インフラエンジニアもバックアップ・ユーザー管理・パフォーマンス確認などのDB管理知識が必須です。

読了目安:約18分更新日:2026年3月

💡 インフラエンジニアがMySQLを知っている価値:障害対応でアプリエンジニアと連携できる・バックアップ設定ができる・パフォーマンスボトルネックを特定できるという3つの強みが生まれます。

この記事を書いた人
現役ITエンジニア・IT講師(経験14年)
CCNA・CCNP 取得LPIC-1 保有AzureFundamentals 保有SES現場を複数経験

Webシステムのインフラ構築・運用でMySQLを日常的に扱ってきた立場から解説します。

1. 接続・基本操作

# MySQLに接続
mysql -u root -p

# データベース一覧・使用するDBを選択
SHOW DATABASES;
USE myapp_db;

# テーブル一覧・テーブル構造の確認
SHOW TABLES;
DESC users;

# データの確認(件数上限付き)
SELECT * FROM users LIMIT 10;
SELECT COUNT(*) FROM orders;

2. ユーザー・権限管理

# アプリ用ユーザーを作成(最小権限で)
CREATE USER 'appuser'@'%' IDENTIFIED BY 'StrongPassword123!';
GRANT SELECT, INSERT, UPDATE, DELETE ON myapp_db.* TO 'appuser'@'%';
FLUSH PRIVILEGES;

# ユーザー一覧の確認
SELECT user, host FROM mysql.user;
💡 rootユーザーをアプリから使わない

また、アプリケーションからのDB接続にrootユーザーを使うのは厳禁です。必要な権限だけを持つアプリ専用ユーザーを作成して接続することがセキュリティの基本です。

3. バックアップ・リストア

# mysqldumpでバックアップ
mysqldump -u root -p myapp_db > myapp_db_$(date +%Y%m%d).sql

# リストア
mysql -u root -p myapp_db < myapp_db_20260320.sql

# 全データベースのバックアップ
mysqldump -u root -p --all-databases > all_db_backup.sql

4. パフォーマンス確認

# プロセスリスト(現在実行中のクエリ)
SHOW PROCESSLIST;

# スロークエリの確認(遅いクエリを特定)
SHOW VARIABLES LIKE 'slow_query_log%';

# ステータス情報(接続数・クエリ数等)
SHOW STATUS LIKE 'Connections';
SHOW STATUS LIKE 'Threads_connected';
📌 この記事のポイント
  • インフラエンジニアもバックアップ・ユーザー管理・パフォーマンス確認のMySQL知識が必要
  • アプリ用DBユーザーは必要な権限だけを持つ専用ユーザーを作成する
  • mysqldumpで定期バックアップを取ることが最低限のDB運用

キャリアの疑問、一緒に解決しませんか?

Infra Academyでは、インフラ系ITエンジニアを目指す方への個別サポートを行っています。2026年7月からフリーランス講師として本格始動予定です。

※MySQLのバージョンにより仕様が異なります。

ABOUT ME
たから
サラリーマンをしながら開業して経営やってます。 今年、本業で独立・別事業を起業予定です。 ◆経験:IT講師/インフラエンジニア/PM/マネジメント/採用/運用・保守・構築・設計 ◆取得資格:CCNA/CCNP/LPIC-1/AZ-900/FE/サーティファイC言語 ◆サイドビジネス:アパレル事業/複数のWEBメディアを運営