Linux 安装 MySQL (yum 在线安装方式)

安装环境

CentOS 7 64位

一、在线安装MySQL

  1. 下载MySQL官方软件仓库 # MySQL5.7的软件仓库,下载文件的大小大概25K左右 wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
  2. 安装MySQL软件仓库 yum -y install mysql57-community-release-el7-10.noarch.rpm
  3. 安装MySQL yum -y install mysql-community-server

PS:如果第3步安装失败,出现以下错误,原因是MySQL的GPG升级了,需要重新获取。 执行:

rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022

再次进行第3步。

二、启动MySQL

# 启动mysql
[root@localhost ~]# service mysqld start

# 查看mysql运行状态
[root@localhost ~]# service mysqld status
Redirecting to /bin/systemctl status mysqld.service
● mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: active (running) since Tue 2020-08-04 22:55:28 EDT; 55s ago
     Docs: man:mysqld(8)
           http://dev.mysql.com/doc/refman/en/using-systemd.html
  Process: 41044 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited, status=0/SUCCESS)
  Process: 40995 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
 Main PID: 41047 (mysqld)
   CGroup: /system.slice/mysqld.service
           └─41047 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid

Aug 04 22:55:22 localhost.localdomain systemd[1]: Starting MySQL Server...
Aug 04 22:55:28 localhost.localdomain systemd[1]: Started MySQL Server.

三、配置MySQL的密码等属性

首先需要从安装日志中找到MySQL的初始密码。

# .e-kj-?%S4da 就是此次安装的MySQL的初始密码
[root@localhost ~]# grep "password" /var/log/mysqld.log
2020-08-05T02:55:25.487331Z 1 [Note] A temporary password is generated for root@localhost: .e-kj-?%S4da

使用初始密码连接数据库:

[root@localhost ~]# mysql -u root -p
Enter password:

修改数据库密码:

mysql> set password for root@localhost = password(123456);

如果设置的密码太简单可能会报异常:

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

设置密码策略:

mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.00 sec)

mysql> set global validate_password_length=1;
Query OK, 0 rows affected (0.00 sec)

设置完密码策略之后就可以修改密码为简单的密码了,此时再重新执行修改密码的语句就行了。

如果需要远程连接此数据库,还需要做以下配置:

# 开放远程连接
mysql> use mysql;
mysql> update user set user.Host=% where user.User=root;
mysql> flush privileges;

# 开放防火墙的3306端口
[root@localhost ~]# firewall-cmd --permanent --add-port=3306/tcp
success
[root@localhost ~]# firewall-cmd --permanent --add-port=3306/udp
success
[root@localhost ~]# firewall-cmd --reload
success

如果你不希望yum自动更新MySQL,那么需要移除MySQL的仓库文件:

yum -y remove mysql57-community-release-el7-10.noarch
经验分享 程序员 微信小程序 职场和发展