久しぶりにMySQL鯖を構築したら、くだらないことで躓いたのでメモ。
MySQL鯖へ、別端末からTCP接続を行う場合には接続するユーザーに対して権限を与える事が必要。さすがにrootを外部に公開するのはみっともないので、適当にユーザーを作ってテーブル操作を行える権限を与えることにする。
まずは、DBアクセスユーザーの作成。
grant all privileges on dbname.* to username@hostname identified by 'password';
次に、作成したユーザーに権限を与える。
grant select,insert,delete,update,drop on dbname.* to username@hostname identified by 'password';
hostnameの部分はドメインでもいいし、端末のIPでもOK。
異なる複数の端末からアクセスが必要な場合はドメイン管理したほうが楽そうです。