conoha に外部からアクセスできるMysqlを設置

conoha に外部からアクセスできるMysqlを設置してみました。

■Conohaへの接続

キー接続で設定し、sshで接続

ssh -i /home/xxxx/key-20xx-0x-xx-0x-xx.pem root@xxx.xxx.xxx.xxx

■バージョン
# cat /etc/os-release
NAME=”Ubuntu”
VERSION=”18.04.4 LTS (Bionic Beaver)”

■参考
https://qiita.com/houtarou/items/a44ce783d09201fc28f5

■インストール
# apt install mysql-server mysql-client

■インストールされたMysqlのバージン
# mysql –version
mysql Ver 14.14 Distrib 5.7.31, for Linux (x86_64) using EditLine wrapper

■サーバ状態確認
# service mysql status

■サーバ起動
# service mysql start

■サーバ停止
# service mysql stop

■rootユーザーの設定
# mysql_secure_installation

■DB作成

# mysql -u root
パスワード入力

show databases;

CREATE DATABASE [データベース名] CHARACTER SET utf8mb4;

show databases;

■ユーザと権限設定
grant all privileges on [データーベース名].* to ‘[ユーザ名]’@’%’ identified by ‘[password]’ with grant option;

すでに、ユーザがある場合は、権限付与
GRANT all ON [データーベース名].* TO '[ユーザ名]’@’%’;

全てのデータベースに権限付与する場合は
GRANT all ON *.* TO '[ユーザ名]’@’%’;
(一度行っておくと、DBを追加した時は、設定は不要となるがセキュリティーが緩くなる)

select user,host from mysql.user;

■ユーザで確認(ローカル)

exit

# mysql -u [新しいユーザ名] -p

show databases;

exit

■ユーザで確認(外部から確認)
同じ端末で

# mysql -h [ip] -u [新しいユーザ名] -p

(111)のエラー

exit

vim /etc/mysql/mysql.conf.d/mysqld.cnf

bind-address = 127.0.0.1
これを
#bind-address = 127.0.0.1
に変更

iで、編集モードに入り、カーソルで移動#を追加し
し[esc]:wqで、保存終了

# service mysql stop
# service mysql start

で、
# mysql -h [ip] -u [新しいユーザ名] -p
にて確認

サーバIP確認は
# ifconfig
eth0: flags=4163 mtu 1500
inet xxx.xxx.xxx.xxx netmask 255.255.254.0 broadcast xxx.xxx.xxx.xxx

確認ができたら
外部ツールから接続確認を行う