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版本起数据目录和root账户由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显示如下错误信息时:
[ERROR] --initialize specified but the data directory exists. Aborting,请执行rm -rf /var/lib/mysql