hotoolong's blog

RailsやVim、業務で気になったことを綴ってます

brew で MySQL8.0をインストールする

MySQL8.0がリリースされましたね。

MySQL8.0の機能

MySQL :: MySQL 8.0: Up to 2x Faster

新機能と以下が上げられています。

  • Document Store
  • Transactional Data Dictionary
  • SQL Roles
  • utf8mb4 character set が Default に
  • 共通テーブル式の追加
  • Window関数の追加
  • 不可視化インディックスの追加
  • 降順インディックスでのパフォーマンス改善?

機能改善として以下が上げられています。

Role設定ができることや、不可視化インディックスなど興味深いですね。

文字コードに関してはデフォルト設定が日本語には少し優しくない状態ですが、 以前よりは改善されてます。

blog.kamipo.net

以前からこの問題に関しては かみぽわーる さんが詳しく取り上げてくれていますね。

デフォルトの collationが utf8mb4_0900_ai_ci になってます。

utf8mb4_bin にしておけば概ね大丈夫ですね。 「MySQL」と「MySQL」を区別したくない場合は utf8mb4_0900_as_cs
私が扱っているサイトでは utf8mb4_bin 一択です。

以下のスライドで collation に関して詳しく書かれているので参考にされたい方は見て下さい。

www.slideshare.net

brew で インストール

かなり高速化されていると謳っているので Macで早速試してみたい方はbrewからインストールしてみてください。 brew optionsを見てみると

⋊>  brew options mysql
--with-debug
        Build with debug support
--with-embedded
        Build the embedded server
--with-local-infile
        Build with local infile loading support
--with-memcached
        Build with InnoDB Memcached plugin
--with-test
        Build with unit tests
--devel
        Install development version 8.0.4-rc

になっているので

⋊>  brew install mysql --devel

で8.0.4-rcがインストール可能です。 よいMySQLライフを!