最近少し、作り方が変わったのか変えたのか。
こんなやり方をしてることが多いです、ってのがあったので備忘録。
create database データベース名; CREATE USER 'ユーザ名'@'サーバ名' IDENTIFIED BY 'パスワード'; GRANT ALL ON データベース名.* TO 'univcoop'@'サーバ名';
サーバ名は、localhostじゃない場合で適度にワイルドカードしたい場合は「192.168.0.%」とかって書き方で。
あと。
MySQL8.0(.4 ?)から、認証方式のデフォルトがcaching_sha2_passwordってのに変わったそうでございます( https://dev.mysql.com/doc/refman/8.0/en/caching-sha2-pluggable-authentication.html )。
via https://qiita.com/ucan-lab/items/3ae911b7e13287a5b917
で、その辺知らずにPDOでガリゴリっと書きますと
SQLSTATE[HY000] [2054] The server requested authentication method unknown to the client
といった感じのエラーに出くわします。
この場合は、ユーザを作る時に
CREATE USER 'ユーザ名'@'サーバ名' IDENTIFIED WITH mysql_native_password BY 'パスワード';
ってな感じで、明示的に指定してやると、よい塩梅になるようでございます。
色々と、地味にあちこち変化はあるなぁ、と思いつつ、備忘録用にメモり。
あ。
いつの頃からかは不明ですが、パスワードが雑だと
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
的に怒られます。
大まかには
・英の大小文字、数字、記号がそれぞれ入って
・全体で8文字以上
という感じのようでございます。
my.cnfのvalidate-passwordとか「SHOW GLOBAL VARIABLES LIKE 'validate%';」で見て取れる値とかで色々あるようですが……まぁ、これくらいはこのままでもいいんじゃないかなぁ、的な。
なので、面倒なんで調べてないんで、興味がある各位におかれましては、自習いただければ幸いです。