RedHat7安装mysql 8.0.31 实践
简单的安装记录,以及问题寻找
直入正题
第一步,进入网站下载对应的包
https://downloads.mysql.com/archives/community/
第二步,复制到linux服务器中并安装
解压 tar -xvf mysql-8.0.31-1.el7.x86_64.rpm-bundle.tar
执行安装 yum install
成功后执行命令得到如下:
[mysql@localhost ~]$ mysqladmin --version
mysqladmin Ver 8.0.31 for Linux on x86_64 (MySQL Community Server - GPL)
赋予mysql安装目录所有者为mysql用户,rpm包默认安装后的路径在/var/lib/mysql。在授予mysql用户所有者和所属组权限之后,你可以使用mysql用户进行登录或者启动服务与关闭服务。
#添加mysql组
$ groupadd mysql
#新增mysql用户到mysql组中
$ useradd -g mysql mysql
#修改mysql用户密码
$ mysql passwd
#mysql数据库存储目录的权限
$ chown -R mysql:mysql /var/lib/mysql
#日志的权限
$ chown mysql:mysql /var/log/mysqld.log
设置密码为空,后续登录可修改密码
$ mysqld --initialize-insecure
验证日志
$ cat /var/log/mysqld.log
[Warning] [MY-010453] [Server] root@localhost is created with an empty password ! Please consider switching off the --initialize-insecure option.
权限搞一下
[root@mysql ~]# chown -R mysql:mysql /var/lib/mysql
[root@mysql ~]# chown mysql:mysql /var/log/mysqld.log
[root@mysql ~]# systemctl start mysqld --启动(启动不成功就看日志呗)
[root@mysql ~]# systemctl status mysqld --看下状态
[root@mysql ~]# mysql -uroot -p
防火墙记得关!或者设置端口通过呗(自己去搜吧),我直接关!
systemctl stop firewalld.service
算了,还是放着吧
$ firewall-cmd --zone=public --add-port=3306/tcp --permanent
$ firewall-cmd --zone=public --add-service=mysql --permanent
$ firewall-cmd --reload
进来了!建立用户给权限,改密码!
mysql> CREATE USER 'root'@'%' IDENTIFIED BY 'Mysql@123456'; -- 第一步创建用户
mysql> GRANT ALL ON *.* TO root@'%'; -- 第二步授权
mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'Mysql@123456'; -- 第三步修改密码验证方式
mysql> flush privileges; -- 第四步刷新权限
结束,去用客户端连接吧!