ウェブサイト検索

公式YumリポジトリからMySQL 5.6をインストールする方法


ステータス: 廃止済み

この記事は、もはやサポートされていないCentOSのバージョンについて説明しています。現在、CentOS 6を実行しているサーバーを運用している場合は、サポートされているバージョンのCentOSにアップグレードまたは移行することを強くお勧めします。

理由: CentOS 6は2020年11月30日にサポート終了(EOL)となり、以降セキュリティパッチやアップデートが提供されません。このため、このガイドはもはや維持されていません。

代わりに見る: このガイドはリファレンスとしては役に立つかもしれませんが、他のCentOSリリースでは動作しない可能性があります。利用可能な場合は、使用しているCentOSのバージョン用に書かれたガイドを使用することを強くお勧めします。

以下のDigitalOceanのチュートリアルは、CentOS 7サーバーにMySQLをインストールする手順が説明されているため、すぐに興味を引くかもしれません:

  • CentOS 7にMySQLをインストールする方法

提出者: モルガン・トッカー、オラクルのMySQLコミュニティマネージャー

紹介

2013年10月、MySQL開発チームは公式にyumリポジトリのサポートを開始しました。これにより、ソースから直接最新のMySQLをインストールできるようになりました!

このガイドでは、CentOS 6の新しいインストールにMySQL 5.6をインストールし、次にDigitalOceanのために構成を最適化するためにいくつかの追加の調整を行います。

MySQL 5.6の変更に不慣れな場合は、「MySQL 5.6の新機能」を読むことをお勧めします。非常に便利な機能がいくつかあります。

サーバーを選択する

今日は、4GBのRAMと60GBのSSDが含まれている月額$40のサーバーを選択しますが、アプリケーションの要件に応じて別のサイズを選ぶことも自由です。MySQLは非常に少ないRAMを持つシステムにインストールできるだけでなく、100GBを超えるスケールアップも可能です。別のサーバーサイズを選択した場合は、以下の推奨構成に従って調整してください。

公式リポジトリは、32ビットおよび64ビットのEnterprise Linux 6、およびFedora 18と19をサポートしています。CentOSは__C__ommunity __Ent__erprise __O__perating __S__ystemであり、この目的には問題なく動作します:

MySQLのインストール

yumリポジトリファイルはMySQLの開発者ウェブサイトからダウンロードする必要があります。インストールが完了したら、単純なyum updateを実行することで、セキュリティ更新も含めてMySQL 5.6の最新のポイントリリースを確実に取得できます。また、Yumは依存関係もインストールされることを保証するため、インストールプロセスを少し簡素化します。

始めるには、http://dev.mysql.com/downloads/repo/ にアクセスし、Red Hat Enterprise Linux 6/Oracle Linux 6 のダウンロードリンクをクリックしてください:

その後、「いいえ、ただダウンロードを開始する」の下にあるリンクをコピーしてください:

サーバーにログインし、このファイルをダウンロードしてください。以下に例のURLがあります。レポジトリの最新バージョンがないか再確認することをお勧めします:

wget http://dev.mysql.com/get/mysql-community-release-el6-3.noarch.rpm/from/http://repo.mysql.com/

ローカルファイルからリポジトリをインストールします:

sudo yum localinstall mysql-community-release-el6-*.noarch.rpm

あなたのサーバーには公式リポジトリがインストールされましたが、まだソフトウェアはインストールされていません。このリポジトリにはMySQLサーバー、MySQL Workbench管理ツール、ODBCドライバーが含まれています。それでは、MySQLサーバーをインストールしましょう:

sudo yum install mysql-community-server

MySQLを開始する:

sudo service mysqld start

再起動時にMySQLが自動的に起動するように設定する:

sudo chkconfig mysqld on
chkconfig --list mysqld

それで全て完了です!

仕上げの仕上げを行っています

MySQLの開発チームは、MySQLが初期設定のままでより良くチューニングされるように多くの努力をしました。そして、5.6はほとんど設定を必要としません。それはさておき、いくつかの設定を調整してほしい項目があり、これらは[mysqld]のセクションに/etc/my.cnfに追加できます:

sudo vim /etc/my.cnf
  • システムメモリの50〜80%にinnodb_buffer_pool_sizeを設定することをお勧めします。私が選択したサーバーの場合、4GBの50%は2GBです。これにより、MySQLはより多くのデータをキャッシュできるようになり(デフォルトは128Mのみ)、パフォーマンスを大幅に向上させることができます。

  • MySQLは非常に小さなトランザクションログをデフォルトで持っており、これはクラッシュリカバリーを提供するために使用される機能です。開発環境では小さなログファイルはスペースを節約するのに役立ちますが、本番環境ではバックグラウンドでより多くの書き込みをキューにするためにこれらを増やすことをお勧めします。この設定はinnodb_log_file_sizeであり、推奨される値は128Mから4Gの範囲です。

  • SSDを使用する際、順次IOはランダムIOよりも速くはなりません。これは、MySQLに最適化の一つを無効にして、少しCPUを節約できることを伝えられることを意味します。この設定はinnodb_flush_neighbors=0です。

  • デフォルトでは、MySQLはデータを失わないように非常に慎重ですたとえ電源が失われても。これにはパフォーマンスのコストがかかり、多くのクラウド環境では、ユーザーは電源が切れた際に数秒のデータ損失を許容することを選びます。変更する設定はinnodb_flush_log_at_trx_commit=2です。

  • UTF-8はMySQLで国際的な文字を保存するためのより良いデフォルトです。character-set-server=utf8mb4とcollation-server=utf8mb4_general_ciを設定することで変更できます。必要に応じて、個々のデータベース、テーブル、列でこれを上書きすることも可能です。

  • 多くのシステム管理者は、サーバーのタイムゾーンをGMTに設定することを推奨しており、これはtimezone=GMTを使用して実行できます。

  • 古いバージョンとの互換性を確保するために、MySQLはデフォルトで不正確で範囲外の値を許可しています。アプリケーションがこのレガシーのMySQLの動作に依存していない限り、新しい厳格なSQL_MODEオプションを有効にすることをお勧めします。

*まとめて、これらが変更点です:

innodb_buffer_pool_size=2G
innodb_log_file_size=256M
innodb_flush_neighbors=0
innodb_flush_log_at_trx_commit=2

Default to UTF-8 for text columns
character-set-server=utf8mb4
collation-server=utf8mb4_general_ci

Set the default timezone to GMT.
This is a common recommended practice, but can also remove this line
If your date/time values appear incorrect.
timezone=GMT

This configuration item is optional:
It makes MySQL more strict and rejects invalid values.
You may need to remove this line for legacy applications.
sql-mode="STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ENGINE_SUBSTITUTION,NO_ZERO_DATE,NO_ZERO_IN_DATE,ONLY_FULL_GROUP_BY"

さらなる読書

これで公式のyumリポジトリを使用したMySQL 5.6の基本インストールは完了です。MySQLチームは皆さんのフィードバックに関心を持っています。問題が発生した場合や単に提案がある場合は、http://forums.mysql.com/list.php?11を訪問してください。

私のブログには、インストール後にMySQL 5.6で何を設定するかのより高度なバージョンもあります。しかし、この記事の手順に従っていれば、あなたは95%の道のりを進んでいますので、安心してください!

関連記事: