Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
67
Help us understand the problem. What is going on with this article?
@yoshiokaCB

mysql server で外部から接続できるユーザを作成する。

More than 1 year has passed since last update.

概要

今回mysqlサーバに外部から接続して動きを確認したかったので、vagrantを使用してcentosサーバの中にmysqlをインストールし、mysqlサーバを構築しようと考えた。(centosサーバを構築した状態からスタート。)

サーバ構築後、外部から接続できるユーザの発行を少し調べたのでメモに残そうと思います。

作業内容

まずはサーバにsshでログインし、mysqlをインストールする。

$ yum install mysql-server
$ vi /etc/my.cnf

必要最小限ですが、my.cnfを修正する。

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0

# 下記のcharacter-setを追加してやる。
character-set-server = utf8

...

修正が終わったらmysqlを起動する。

$ /etc/init.d/mysqld start

下記のような感じで外部から接続できるユーザを作る。

> grant all privileges on [db_name].* to [user_name]@"[ip_address]" identified by '[password]' with grant option;

今回はすべての権限を持っていて、どこからでもアクセスできるようにしたかったので、ワイルドカードを使用して以下のようなユーザを作成した。
(権限はもちろんすべてのDBにアクセスできる)

$ mysql -u root
> grant all privileges on *.* to test_user1@"%" identified by 'test1234' with grant option;
> select user,host from mysql.user;

# 上記で設定したアクセス権限でユーザが作られているか確認する。
# 今回は  test_user1 が % (どこからでも)になっているか確認できる。

+------------+-----------------------+
| user       | host                  |
+------------+-----------------------+
| test_user1 | %                     |
| root       | 127.0.0.1             |
|            | localhost             |
| root       | localhost             |
|            | localhost.localdomain |
| root       | localhost.localdomain |
+------------+-----------------------+

あとは、mysqlを再起動してmysqlクライアントがインストールされている端末から下記のコマンドでアクセスしてみる。

$ mysql -h [ip or address] -u [user_name] -p
67
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
67
Help us understand the problem. What is going on with this article?