#author("2023-10-30T06:38:54+09:00","default:ryuichi","ryuichi")
#author("2023-10-30T06:39:29+09:00","default:ryuichi","ryuichi")
* Debian 10にMySQL8をインストール [#s1b4efeb]
** MariaDBアンインストール [#e0dbf0b4]
sudo apt-get remove --purge mariadb-server-10.3 mariadb-client-10.3 mariadb-server-core-10.3 mariadb-common
sudo apt-get autoremove
sudo apt-get autoclean
** mysql-apt-configインストール [#j48fd938]
*** mysql-apt-configとは? [#a31ec80e]
> mysql-apt-configはMySQLのAPTリポジトリをDebianベースのシステム(Debian, Ubuntuなど)に追加するための設定パッケージです。このパッケージをインストールすることで、MySQLの公式リポジトリがシステムに追加され、apt-getコマンドを使用してMySQLをインストールまたはアップデートできるようになります。
*** 手順 [#f5d2dad7]
- 下のページをブラウザで開き、ダウンロードボタンを押下するとログインを促されるが、画面に直接ダウンロードするリンクがあるのでそれを利用する
-- https://dev.mysql.com/downloads/repo/apt/
- ここでは以下のURLだった
-- https://dev.mysql.com/get/mysql-apt-config_0.8.25-1_all.deb
- もしOSがMySQLの新しいバージョンをサポートしてない場合は、以下のURLからアーカイブを開き、対応してるバージョンを探してmysql-apt-configをダウンロードする
- https://dev.mysql.com/downloads/mysql/
wget https://dev.mysql.com/get/mysql-apt-config_0.8.25-1_all.deb
sudo dpk -i ./mysql-apt-config_0.8.25-1_all.deb
(TUIでインストール作業をする)
find /etc/apt/ -mmin -1
/etc/apt/sources.list.d
/etc/apt/sources.list.d/mysql.list
** MySQLインストール [#u51ee138]
sudo apt update
sudo apt install mysql-server
** MySQL起動スクリプト作成- SysV init [#z25445c7]
- /etc/init.d/mysqlファイルを作成し、以下の内容を記述する
#!/bin/sh
### BEGIN INIT INFO
# Provides: mysql
# Required-Start: $all
# Required-Stop: $all
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: MySQL service
### END INIT INFO
case "$1" in
start)
echo "Starting MySQL..."
sudo -u mysql mysqld &
;;
stop)
echo "Stopping MySQL..."
sudo pkill mysqld
;;
restart)
echo "Restarting MySQL..."
sudo pkill mysqld
sleep 2
sudo mysqld &
;;
status)
if ps aux | grep mysqld | grep -v grep > /dev/null; then
echo "MySQL is running."
else
echo "MySQL is not running."
fi
;;
*)
echo "Usage: /etc/init.d/mysql {start|stop|restart|status}"
exit 1
;;
esac
exit 0
** MySQL起動、初期設定 [#a0e78b44]
*** 起動 [#s36e5c8f]
sudo /etc/init.d/mysql start
mysql -u root -p
*** DB、ユーザー作成 [#nca94b8d]
CREATE DATABASE my_database;
CREATE USER 'my_user'@'localhost' IDENTIFIED BY 'my_password';
GRANT ALL PRIVILEGES ON my_database.* TO 'my_user'@'localhost';
FLUSH PRIVILEGES;
*** 接続確認 [#n3cf801b]
mysql -u my_user -p my_database;
** 参考 [#i2039616]
https://dev.mysql.com/doc/mysql-apt-repo-quick-guide/en/#apt-repo-setup