PostgreSQL/MySQLでDBとユーザを作成する方法
PostgreSQLまたはMySQLのインスタンスに個別のDBとユーザを作成する方法を説明します。
PostgreSQL
DBサーバにログインします。ここではpsqlコマンドを使うためにDockerを利用します。
docker run --rm -ti -v $(pwd):/tmp postgres:9.6 bash -l
psql "host=your-host port=5432 user=your-root-user dbname=your-db"
DBの作成と作成したDB専用のユーザを作成します。
-- DB作成
\l
create database mydb;
\l
-- ユーザ作成
\du
create user myuser with password 'change me';
\du
-- ユーザの権限設定
\l mydb
grant all privileges on database mydb to myuser;
\l mydb
不要になったら削除します。
drop database mydb;
drop user myuser;
MySQL
DBサーバにログインします。ここではmysqlコマンドを使うためにDockerを利用します。
docker run --rm -ti -v /home/ec2-user/db:/tmp mysql:5.7 bash -l
mysql -h yourhost -P 3306 -u your-root-user -p your-db
DBの作成と作成したDB専用のユーザを作成します。
-- DB作成
show databases;
create database mydb;
show databases;
show create database mydb;
-- ユーザ作成
select user, host from mysql.user;
create user myuser identified by 'change me';
select user, host from mysql.user;
-- ユーザの権限設定
show grants for 'myuser'@'%';
grant all on mydb.* to myuser;
show grants for 'myuser'@'%';
不要になったら削除します。
drop database mydb;
drop user myuser;