1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

MySQLの起動からユーザ作成&権限付与まで

Last updated at Posted at 2019-07-13

#この記事の内容
初めてMySQLを触ったので備忘録
以下3つの内容に関して記載する
・MySQLを立ち上げる
・ユーザーを作成する
・権限を付与する

#環境
mysql: ver 8.0.16 for osx10.13 on x86_64 (Homebrew)
OS:MacOS HighSierra 10.13.6

#MySQL立ち上げ
インストール部分は省略(Homebrewでインストール可能)
ターミナルを起動して以下のコマンドを入力してmysql.serverを立ち上げる

mysql.server start

以下の内容が表示されれば起動成功

Starting MySQL
.. SUCCESS! 

次にmysqlに接続
現在ユーザーは作成していないため管理ユーザー-rootで接続する

mysql -uroot

以下のように

>mysql 

と表示されれば接続成功
なお、接続を解除する方法はいくつか存在して、いずれかのコマンドを実行する

>mysql quit
>mysql exit
>mysql \q

#ユーザーを作成する
現在はrootでログインしているので、新規にユーザを作成する
ユーザーを新規に作成するためには以下のコマンドを入力する

'user'はユーザ名
'localhost'はホスト名
'password'はパスワード

CREATE USER 'user'@'localhost' IDENTIFIED BY 'password";

以下のコマンドでユーザ一覧を表示できる。
作ったユーザーが一覧に存在していれば作成成功

SELECT user,host FROM mysql.user

作成したユーザーでログインするためには以下のコマンドを実行

mysql -u user -p

そうするとpasswordの入力を求められるので先ほどのpassを入力することでログイン可能
現在ログインしているユーザを確かめるには以下のコマンドを実行

SELECT user()

ログインの際に用いたuserが表示されていればログイン成功

#権限を付与する
作成したユーザーは何も権限を持たないため、権限を付与する。
権限は細かに設定可能であり、データベース、テーブル単位で設定も可能
今回は全ての権限を与えるよう設定する。

GRANTのコマンドを使用するのだが、ググったサイトの大半のサイトに記載されてる内容ではうまくいかなかった。
おそらくMySQLのバージョンアップにともないコマンドの仕様が変更されたのではないかと考えられる。

以下のコマンドで全ての権限をuserに付与可能
database名,table名にはアクセスを許可したいものを入力する
database名,table名にはワイルドカード[*]も使用可

grant all privileges on [database名].[table名] to 'user'@'localhost';
grant all privileges on [database名].* to 'user'@'localhost';

現在はお試しで触っているので権限をALLとしているが、
権限の細かな変更に関してはまた必要になったタイミングで記事にしようかと思います。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?