【Mac】MySQLにおいて作業ユーザーを設定する際に、SQL文をテキストエディタで書いてコピペする時の注意点
こんにちは、iPhoneアプリ開発者の中川です。
最近はiPhoneアプリの制作活動を休止してRuby on Railsの勉強をしています。
Ruby on Railsの標準のデータベースはSQLiteなのですが、SQLiteだと型が限られていたり、外部キーの設定がややこしいという理由から、データベースはMySQLを採用して取り組んでいます。そんな大規模なアプリケーションを作ろうとしてるわけではないからSQLiteでもいい気がしますが、よくわかりません。。。
Ruby on Rails + MySQLの設定をする際に参考にしたサイトは以下
Mac環境の Rails 4 で MySQL を利用する手順
このサイトを下って行くと、
開発 & ローカル な環境 なので、root ユーザでいいとは思いますが、もし他のユーザでやる場合は恐らく DB の Create 権限があるユーザを作成するなど、きちんと権限を考える必要があるかと思います。
とあります。command + F でコピペして探してみてください。
ここで問題になってくるのが”Create 権限があるユーザを作成する”ということ。
特に複数人で開発をする上で、rootユーザーのパスワードが見えてしまっては何かと都合が悪い。
ということで、MySQLで作業ユーザーを設定していたのですが、
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘‘パスワード’’ at line 1
というエラーで捕まってしまいました。
いろいろ調べたのですが、解決方法が見つからない。エラー文には‘‘パスワード’’付近が間違ってるよ!とあるので、その付近をじろじろ見ながら解決方法を考えていました。
結論から言うと、
シングルクォーテーションをテキストエディタで書く場合とターミナルで書く場合で、’の記号が微妙に違うんです。
こんなオチはひどい!
成功する場合の作業ユーザー作成のSQL文を以下に記します。。。 エラーが出る場合は以下をコピペしてユーザー名、パスワードを修正して使ってください。それでも失敗する場合は直接ターミナルで’を書き直してください。
1 |
GRANT ALL ON *.* TO ユーザー名@localhost IDENTIFIED BY 'パスワード'; |
ディスカッション
コメント一覧
まだ、コメントがありません