Linux で RPM 経由で MySql 5.7.33 をインストールする
- MySql関連パッケージをダウンロードする
- 関連するパッケージには依存関係があるため、順番にインストールする必要があります
rpm -ivh mysql-community-common-5.7.33-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.33-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.33-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.33-1.el7.x86_64.rpm
- パスワードを初期化します(初期完了後のパスワードは空です)
mysqld --initialize-insecure --user=mysql
- MySQLを開始する
systemctl start mysqld
- ログインしてパスワードを更新し、リモート接続を許可します
mysql -u root --skip-password
ALTER USER 'root'@'localhost' IDENTIFIED BY 'YOURPASSWD';
grant all privileges on *.* to 'root'@'%' IDENTIFIED BY '2660c1dd1942844f';
update mysql.user set grant_priv='Y' where user='root';
flush privileges;
- 関連するワンクリック インストール スクリプト
インストールする前に、関連する rpm パッケージとスクリプトを同じディレクトリに配置する必要があります
function IN_MYSQL () {
local PACK_PARH=$(cd $(dirname $0); pwd)
cd $PACK_PATH
pkill mysql
sleep 5
for i in `rpm -qa | grep msyql`;do rpm -e --nodeps $i;done
for i in `rpm -qa | grep mariadb`;do rpm -e --nodeps $i;done
\rm -rf /var/lib/mysql /etc/my.cnf /var/log/mysqld.log
rpm -ivh mysql-community-common-5.7.33-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.33-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.33-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.33-1.el7.x86_64.rpm
# Init mysql
mysqld --initialize-insecure --user=mysql
systemctl start mysqld
mysql -u root --skip-password -e "ALTER USER 'root'@'localhost' IDENTIFIED BY '2660c1dd1942844f';grant all privileges on *.* to 'root'@'%' IDENTIFIED BY '2660c1dd1942844f';update mysql.user set grant_priv='Y' where user='root';flush privileges;"
# Add a power-on boot
systemctl enable mysqld
ps aux | grep mysql | grep -v grep
if [ $? -eq 0 ]; then
echo '=========== mysql install successed ================'
else
echo '=========== mysql install failed ===================='
fi
}
IN_MYSQL
関連知識の要約:
1. バージョン 5.7.6 以降、データ ディレクトリとルート アカウントは mysqld --initialize によって初期化され、5.7.6 より前のバージョンは mysql_install_db によって初期化されます; 2. --initialize を使用すると、
ランダムな初期アカウントが生成されますroot アカウントのパスワードには、コマンド mysql -u root -p を使用し、パスワードを入力して MySQL にログインします。–initialize-insecure を使用しても、root アカウントのランダムな初期パスワードは生成されません。コマンド mysql -u root --skip-password を使用して MySQL に直接ログインできます。3. mysqld が次のエラー メッセージを表示する場合
:
[エラー] --initialize が指定されましたが、データ ディレクトリが存在します。中止します。rm -rf /var/lib/mysql を実行してください。