鶏口牛後な日々

魔法使い(なんでも作れるエンジニア)を目指してます。ブログは発散中

MySQL

MySQLで文字コードを直す時のmy.cnfの書き方

確認方法 show variables like 'chara%'; これで、今現在の文字コードがどうなっているか確認できる。 文字コードは、サーバー、データベース、カラムといったそれぞれの単位で設定できる。 デフォルトの文字コードを変える場合、 /etc/my.cnf に設定を書き…

MySQLのCollationについてのメモ

Collationとは一体なんぞや まずはそこからですよね〜。日本語訳を調べてみると、「照合順序」。 なんじゃそら。 命名規則 文字コード_言語名_比較法 なんだとか。 文字コード 自ずと知れた、 utf8 とか utf8mb4 とかそういうやつ。 言語名 japanese とか un…

MySQLで文字コードを直す(文字化け)

起きたこと 1度目、ひどい文字化けが起きて、原因を解明するのにかなりの長い時を要しました。 2度目、PHP Laravelのマイグレーションを実行した時に、 default character set utf8mb4 collate 'utf8mb4_general_ci' という記述がエラー文面の最後に含まれて…

AWSのEC2に設置したMySQLにSequelProで接続する

MySQLの設定 Name:なんでも良い MySQL Host:EC2内に設置したMySQLの場合は、127.0.0.1(自身)。RDSを立てた場合は、その固有のIPアドレス。 Username:MySQLのユーザー名 Password:MySQLのパスワード Database:空欄で可(接続するデータベースを限定し…

SQLSTATE[42000]: Syntax error or access violation: 1142 SELECT command denied to user 'user'@'localhost' for table... が出る

エラーの原因 これは、権限がないよ! というエラーでした。 "user"というユーザーに、扱うデータベースに関する権限を与えてやれば、解決しました。 権限を与える方法 GRANTS ALL ON <データベース名>.* TO user@'localhost' identified by 'password'; FLU…

php artisan migrateができず、[PDOException]: Could not Find Driverが出てしまう

エラー[PDOException]: Could not Find Driver 表題のエラーが出てしまいました。 config/database.php の default は、ちゃんと mysql になっている。 .env には、データベースの接続情報を記載している。なんで〜・・・ php-mysql などの、データベースとP…

Amazon LinuxにyumでMysql5.7をインストール&初期設定した

最初に 環境構築中に少し間、期間が空いてしまったため、Mysqlをインストールしたかどうかを忘れてしまいました。 バージョンを見てみると、 MariaDB のバージョンが出てきたので、インストールした模様、と思ってしまいました。 が、よく見るとバージョンも…

AWSでWebサーバ/mysql立ててLaravelで作ったAPI公開までにぶち当たったこととその時に調べたこと

リージョンって何基準で選ぶの? AZによってレイテンシー(遅延)が異なるらしい AZによって価格が異なる。東京だとレイテンシーは少ないが、価格が高い、など。 [参考] AWSソリューションアーキテクトへの道 -AmazonEC2のポイントまとめ- セキュリティグル…

MySQLのtimestampとdatetimeの違いは?

timestampというのは、 作成日時とか、更新日時とか自動で入れる日時系によく使われますよね。 一方で、datetimeというものもあって、これの違いってなんだろう? と思ったので調べてみました。 結論としては、その取れるあたいの幅が違うようです。 公式ド…

AjaxとMySQLとPHP Laravelで郵便番号から住所検索するボタンを実装する

全体像 めちゃめちゃ大まかには、HTML→データベース→PHP Laravel→JS の順で、それぞれ用意していく必要があります。 もう少しブレイクダウンします。↓ HTMLにフォームを用意し、郵便番号入力欄と住所入力欄と検索ボタンを作る MySQLに、郵便番号と住所のテー…

MySQL Workbenchをssh先に作ったvagrant + VirtualBox環境内のMySQLと接続する

MySQL Workbenchのダウンロード まずWorkbenchをダウンロードする。 公式サイトから、OSを選択して適切なインストーラーのダウンロードができる。 この時、Oracleのログイン/サインナップが求められるが、これをしなくてもその下に目立たないように書かれて…

SSHした先でvagrant環境内にあるmysqlにSequelProから接続する

ssh接続した先で、vagrant環境を立ち上げてmysqlを配置し、そのmysqlにssh接続元の端末からSequelPro経由で接続しようとしました。 そうしたら、まず、出たエラーは以下のような感じ(少し編集しています) Used command: <SequelProさんが試みたコマンドがつらつらと表示される> OpenSSH_7.4p1, LibreSSL 2.5.0deb</sequelproさんが試みたコマンドがつらつらと表示される>…

mysqlが起動しない(ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2))

表題の通りのエラーが出ました。 え、なぜ・・・。 これは、自分の無知を思い知らされる内容なのですが、mysqlサーバーをstartしていなかったために起きていました。 systempreference > mysql で、start mysqlします。 はい。ちゃんとログインできました。 …

Laravelで使うユーザーをmysqlで作る

Laravelからアクセスするユーザーをmysqlで作ります。 敢然美貌です。 まず、terminalを開いて、rootユーザーでログインします。 databaseとかuserを作れるのは、rootのみです。 なので、データベースを作る場合は、rootでログインして作りましょう。 ユーザ…

MacにMySQLのインストール(備忘)

参考にしたサイト: MysqlをMACにインストールして起動出来るようにする - Qiita サイトからパッケージをダウンロード、インストール(ここまで普通) この時、初期パスワードがポップアップで表示されるので、必ずメモっておく。 続いて初期パスワードを以…