カテゴリ: MySQL 更新日: 2026/02/24

MySQLユーザー作成方法を完全解説!初心者でもできるMySQLユーザー追加と権限設定

MySQLでユーザーを作成する方法
MySQLでユーザーを作成する方法

先生と生徒の会話形式で理解しよう

生徒

「MySQLをインストールしたんですけど、次に何をすればいいのか分かりません。ユーザーって作らないといけないんですか?」

先生

「はい、MySQLではユーザーを作成して、その人ごとに使える範囲を決めるのが基本です。家の鍵を家族それぞれに渡すようなイメージですね。」

生徒

「パソコンをほとんど触ったことがなくても大丈夫でしょうか?」

先生

「大丈夫です。黒い画面に文字を入力するところから、ひとつずつ丁寧に説明します。」

1. MySQLユーザーとは何か?

1. MySQLユーザーとは何か?
1. MySQLユーザーとは何か?

MySQLユーザーとは、MySQLというデータベースを操作するための「利用者アカウント」のことです。パソコンにログインするためのユーザー名とパスワードがあるのと同じで、MySQLにもログインするためのユーザーが必要です。

MySQLユーザーを作成する理由は、安全にデータを管理するためです。誰でも自由にデータを消したり変更できる状態は危険なので、「この人は見るだけ」「この人は追加もできる」といった制限をかけます。

2. MySQLにログインしてユーザー作成の準備をしよう

2. MySQLにログインしてユーザー作成の準備をしよう
2. MySQLにログインしてユーザー作成の準備をしよう

まずはMySQLにログインします。ログインとは「MySQLを操作しますよ」と名乗る作業です。最初は管理者であるrootユーザーでログインします。


mysql -u root -p

このコマンドを入力すると、パスワードの入力を求められます。画面には何も表示されませんが、これは正常な動作です。入力してEnterキーを押してください。

3. MySQLユーザーを新しく作成する方法

3. MySQLユーザーを新しく作成する方法
3. MySQLユーザーを新しく作成する方法

ユーザーを作成するには、CREATE USERというSQLを使います。SQLとは、MySQLに指示を出すための専用の言葉です。


CREATE USER 'testuser'@'localhost' IDENTIFIED BY 'password123';

ここで使われている言葉を説明します。testuserはユーザー名、password123はパスワードです。localhostは「このパソコンからのみ使える」という意味です。

例えるなら、「testuserさんには、この家の中からだけ使える鍵を渡します。合言葉はpassword123です」という指示になります。

4. ユーザーが作成されたか確認する方法

4. ユーザーが作成されたか確認する方法
4. ユーザーが作成されたか確認する方法

本当にユーザーが作成されたのか、不安になりますよね。そんなときは一覧を確認します。


SELECT user, host FROM mysql.user;

実行結果の例です。


user      | host
----------+----------
root      | localhost
testuser  | localhost

この一覧にtestuserが表示されていれば、ユーザー作成は成功です。

5. データベースとテーブルの例で理解しよう

5. データベースとテーブルの例で理解しよう
5. データベースとテーブルの例で理解しよう

ここで、ユーザーが操作する対象となるテーブルの例を見てみましょう。これは会員情報を保存するテーブルです。


id | name       | age | email
---+------------+-----+-------------------
1  | 山田太郎   | 25  | taro@example.com
2  | 佐藤花子   | 19  | hanako@example.com
3  | 鈴木一郎   | 30  | ichiro@example.com
4  | 高橋次郎   | 22  | jiro@example.com

このような表を操作できるかどうかは、ユーザーに設定した権限によって決まります。

6. MySQLユーザーに権限を付与する方法

6. MySQLユーザーに権限を付与する方法
6. MySQLユーザーに権限を付与する方法

次に、作成したユーザーに「どこまで操作していいか」を決めます。これを権限設定と呼びます。


GRANT SELECT ON sample_db.* TO 'testuser'@'localhost';

このSQLは「sample_dbというデータベースの中身を、見るだけ許可します」という意味です。SELECTは「見る」という操作を表します。

7. 権限設定後の動作イメージ

7. 権限設定後の動作イメージ
7. 権限設定後の動作イメージ

権限を設定した後、testuserでログインすると、データを見ることはできますが、追加や削除はできません。


SELECT * FROM users;

実行結果の例です。


id | name       | age | email
---+------------+-----+-------------------
1  | 山田太郎   | 25  | taro@example.com
2  | 佐藤花子   | 19  | hanako@example.com
3  | 鈴木一郎   | 30  | ichiro@example.com
4  | 高橋次郎   | 22  | jiro@example.com

このように、ユーザー作成と権限設定を行うことで、安全にMySQLを使えるようになります。

8. 初心者がつまずきやすいポイント

8. 初心者がつまずきやすいポイント
8. 初心者がつまずきやすいポイント

MySQLでユーザーを作成するとき、多くの初心者が「エラーが出て怖い」と感じます。しかし、エラーは間違いを教えてくれるメッセージです。

文字の打ち間違いや、記号の付け忘れが原因であることがほとんどです。焦らず、一文字ずつ確認することが大切です。MySQLユーザー作成は、慣れれば毎回同じ流れで行えます。

まとめ

まとめ
まとめ

ここまで、MySQLユーザー作成方法について、初心者の方でも理解できるように順を追って解説してきました。MySQLはデータベース管理システムとして多くの現場で使われており、ユーザー作成と権限設定は避けて通れない基本操作です。MySQLユーザーを作成する理由は、データベースを安全に管理し、誤操作や不正アクセスを防ぐためです。最初はrootユーザーでログインし、CREATE USERで新しいMySQLユーザーを追加し、その後GRANT文で必要な権限だけを付与する、という流れが基本になります。

特に重要なのは「誰が」「どのデータベースを」「どこまで操作できるのか」を明確にすることです。MySQLユーザー追加を行うことで、閲覧専用ユーザー、更新可能ユーザー、管理者ユーザーといった役割分担ができ、実務でも安心してデータベースを運用できます。MySQL初心者の方は、最初は難しく感じるかもしれませんが、何度か同じSQLを実行することで自然と身に付いていきます。

また、MySQLユーザー作成や権限設定は、プログラミング学習の入り口としても非常に重要です。データベースにログインできなければ、テーブルの中身を確認することも、アプリケーションと連携することもできません。今回の記事で学んだMySQLユーザー作成方法、ユーザー確認方法、権限付与の考え方は、今後MySQLを使い続けるうえで何度も役立つ知識になります。

ここで、改めてユーザーとテーブルの関係を整理するため、サンプルを振り返ってみましょう。以下は、あるデータベースに保存されているユーザー情報テーブルの例です。


id | name       | age | email
---+------------+-----+-------------------
1  | 山田太郎   | 25  | taro@example.com
2  | 佐藤花子   | 19  | hanako@example.com
3  | 鈴木一郎   | 30  | ichiro@example.com
4  | 高橋次郎   | 22  | jiro@example.com
5  | 中村恵子   | 28  | keiko@example.com

このようなテーブルに対して、SELECT権限だけを持つMySQLユーザーであれば、データの確認はできますが、INSERTやDELETEはできません。実際にSELECT文を実行すると、次のような結果が表示されます。


SELECT * FROM users;

id | name       | age | email
---+------------+-----+-------------------
1  | 山田太郎   | 25  | taro@example.com
2  | 佐藤花子   | 19  | hanako@example.com
3  | 鈴木一郎   | 30  | ichiro@example.com
4  | 高橋次郎   | 22  | jiro@example.com
5  | 中村恵子   | 28  | keiko@example.com

しかし、同じユーザーでデータを追加しようとすると、権限がないためエラーになります。これはMySQLが正しくセキュリティを守ってくれている証拠です。MySQLユーザー権限設定を適切に行うことで、データベース全体の安全性が高まります。

MySQLユーザー作成でつまずきやすいポイントとして、ユーザー名やパスワードの打ち間違い、シングルクォートの付け忘れ、host指定の違いなどがあります。localhostとパーセント記号の意味を理解するだけでも、MySQLの仕組みが少しずつ見えてきます。最初はエラーが出ても問題ありません。エラー文をよく読み、どこが間違っているのかを確認することが、MySQL上達への近道です。

MySQLユーザー追加、MySQLユーザー削除、MySQL権限確認などは、どれも同じ考え方の延長線上にあります。今回学んだ基本をしっかり理解しておけば、将来データベースを扱う仕事やプログラミング学習でも大きな武器になります。焦らず、少しずつMySQLに慣れていきましょう。

先生と生徒の振り返り会話

生徒

「最初はMySQLユーザー作成って難しそうだと思っていましたが、流れで見ると意外と分かりやすかったです。」

先生

「そうですね。MySQLは最初の一歩さえ越えれば、あとは同じ操作の繰り返しです。ユーザー作成と権限設定は特に大切ですよ。」

生徒

「ユーザーごとにできることを分ける理由も、家の鍵の例えで理解できました。安全のためなんですね。」

先生

「その通りです。MySQLユーザー管理をきちんと行うことで、データベースを安心して使えます。」

生徒

「これからMySQLでテーブル操作やSQL文の練習をするのが楽しみになりました。」

先生

「いいですね。今回学んだMySQLユーザー作成と権限設定を土台に、少しずつできることを増やしていきましょう。」

カテゴリの一覧へ
新着記事
New1
MySQL
MySQLのWHERE句でNOT条件を指定する方法を徹底解説!初心者向けSQL条件検索ガイド
New2
PostgreSQL
PostgreSQLのLIMIT・OFFSETとパフォーマンス問題を完全解説|初心者でもわかる安全な使い方
New3
MySQL
MySQLのUPDATE文でデータを更新する基本を徹底解説|SQL初心者でもわかるデータベース更新入門
New4
PostgreSQL
PostgreSQLのOFFSET完全入門|並び替えと組み合わせてデータをスキップする方法を初心者向けに解説
人気記事
No.1
Java&Spring記事人気No1
PostgreSQL
PostgreSQLのDISTINCT完全ガイド|SQLで重複データを除外する方法を初心者向けに解説
No.2
Java&Spring記事人気No2
PostgreSQL
PostgreSQLの主キー・外部キーを完全解説!初心者でもわかる設定方法と考え方
No.3
Java&Spring記事人気No3
PostgreSQL
PostgreSQLとは?初心者向けに特徴をわかりやすく解説
No.4
Java&Spring記事人気No4
PostgreSQL
PostgreSQLのLEFT JOIN完全入門!不足データを補いながらテーブル結合する仕組みをやさしく解説
No.5
Java&Spring記事人気No5
PostgreSQL
PostgreSQLのUPDATE文の使い方(部分更新・条件更新)
No.6
Java&Spring記事人気No6
PostgreSQL
PostgreSQLスキーマ設計のベストプラクティス完全ガイド|初心者でもわかるデータベース整理術
No.7
Java&Spring記事人気No7
PostgreSQL
PostgreSQLスキーマ作成・削除完全ガイド!初心者でもわかるデータベース設計の基礎
No.8
Java&Spring記事人気No8
PostgreSQL
PostgreSQLの権限管理を完全解説|スキーマ単位で理解するデータベースセキュリティの基礎