目次
1. MySQLとは?
MySQLは、オープンソースのリレーショナルデータベース管理システム(RDBMS)であり、特にWebアプリケーションのバックエンドで広く使用されています。主にPHPやPythonなどのプログラミング言語と組み合わせて使用されることが多く、無料で利用できるオープンソースソフトウェアとして、世界中で広く支持されています。 MySQLの主な特徴:- オープンソースで無料:個人でも商業用途でも自由に使用できます。
- 高いパフォーマンス:大規模なデータ処理を効率的に行うことができ、信頼性が高い。
- スケーラビリティ:小規模から大規模まで、柔軟にスケールさせることが可能。
2. 事前準備:Linuxの環境設定
MySQLをインストールする前に、Linuxシステムが最新の状態であることを確認することが重要です。システムが最新でない場合、依存関係や互換性の問題が発生することがあります。2.1 システム要件の確認
MySQLのインストールを行う際に必要な基本的な要件は次の通りです:- メモリ:512MB以上(推奨1GB以上)
- ディスク容量:最低500MB以上
- OSバージョン:Ubuntu 20.04以降、CentOS 7以降
2.2 システムのアップデート
インストールをスムーズに進めるために、システムのパッケージを最新の状態にしておくことが推奨されます。次のコマンドを実行して、パッケージをアップデートします。- Ubuntuの場合:
sudo apt update && sudo apt upgrade -y
- CentOSの場合:
sudo yum update -y

3. MySQLのインストール方法:Ubuntuの場合
3.1 APTリポジトリを使用したインストール
MySQLをAPTリポジトリを通じてインストールします。以下のコマンドでMySQLサーバーをインストールします。sudo apt install mysql-server -y
3.2 セキュリティ設定の強化
インストール後、mysql_secure_installation
コマンドを実行してセキュリティを強化します。このコマンドでは、rootアカウントのパスワード設定や、不要なデフォルト設定の無効化などが行えます。sudo mysql_secure_installation
3.3 MySQLの起動とステータス確認
MySQLのサービスが正常にインストールされたか確認し、サービスを起動します。以下のコマンドで確認できます。sudo systemctl start mysql
sudo systemctl status mysql
4. MySQLのインストール方法:CentOSの場合
4.1 Yumリポジトリの設定
CentOSでは、公式MySQLリポジトリを追加する必要があります。次のコマンドを実行してリポジトリを設定します。sudo yum install https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
4.2 MySQLのインストール
リポジトリを設定した後、以下のコマンドを使ってMySQLをインストールします。sudo yum install mysql-community-server
4.3 MySQLの起動と自動起動設定
MySQLのインストール後、サービスを起動し、システム起動時に自動的にMySQLが起動するように設定します。sudo systemctl start mysqld
sudo systemctl enable mysqld

5. 基本的な操作
MySQLがインストールされた後、基本的な操作を行ってデータベースを作成したり、ユーザーを管理できます。5.1 MySQLへのログイン
MySQLにログインするには、次のコマンドを実行します。mysql -u root -p
5.2 データベースの作成
新しいデータベースを作成するには、以下のコマンドを使用します。CREATE DATABASE example_db;
作成したデータベースが正しく作成されているかを確認するには、以下のコマンドを実行します。SHOW DATABASES;
5.3 ユーザー作成と外部アクセスの許可
新しいユーザーを作成し、外部からのアクセスを許可するために、必要な権限を付与します。CREATE USER 'new_user'@'%' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'new_user'@'%';
6. トラブルシューティング
6.1 MySQLエラー1045: Access Denied
MySQLにログインしようとした際に「ERROR 1045: Access denied for user ‘root’@’localhost’」というエラーが発生する場合、次の対処法を試してください。- 正しいパスワードの使用:
パスワードが間違っていないか確認します。特に、
root
ユーザーのパスワードを間違えると、このエラーが発生します【25†source】。 - rootパスワードの再設定: もしパスワードが分からなくなった場合は、セーフモードでMySQLを起動し、パスワードを再設定します。
sudo mysqld_safe --skip-grant-tables &
mysql -u root
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
- ポート設定の確認: MySQLがデフォルトポート3306でリスニングしているか確認し、問題があればポートを修正します。
SHOW VARIABLES LIKE 'port';
必要に応じてポートを変更し、MySQLを再起動してください。