Mysql8.0离线安装 centos
上传mysql安装包并解压
tar xvf mysql-8.0.37-1.el7.x86_64.rpm-bundle.tar
运行安装对应的rpm包,按照一下顺序
rpm -ivh mysql-community-common-8.0.37-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-plugins-8.0.37-1.el7.x86_64.rpm
#在运行安装下边这一个rpm包时可能会出现
#mariadb-libs 被 mysql-community-libs-8.0.37-1.el7.x86_64 取代
#解决方法,进行删除在进行安装 yum remove mariadb-libs
rpm -ivh mysql-community-libs-8.0.37-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.0.37-1.el7.x86_64.rpm
rpm -ivh mysql-community-icu-data-files-8.0.37-1.el7.x86_64.rpm
#在运行安装下边这一个rpm包时可能会出现
#libcrypto.so.10(OPENSSL_1.0.2)(64bit) 被 mysql-community-server-8.0.37-1.el7.x86_64 需要
#解决方法 yum install openssl-libs
#net-tools 被 mysql-community-server-8.0.37-1.el7.x86_64 需要
#yum install net-tools
rpm -ivh mysql-community-server-8.0.37-1.el7.x86_64.rpm
创建用户组和用户
groupadd mysql
useradd -g mysql mysql
初始化(在进行初始化的同时,会产生原生初始化密码)
mysqld --initialize --console
注:mysql的初始化密码会在日志文件中产生。一般路径在/var/log/mysqld.log文件中
#获取初始化密码
cat /var/log/mysqld.log | grep localhost
修改权限
chown -R mysql:mysql /var/lib/mysql/
启动mysql
systemctl start mysqld
可能会出现一下错误
这是时候我们可以去查看一下mysql产生的日志文件
vim /var/log/mysqld.log
从报错可以看出是因为没权限,赋权后重新启动
#赋权限
chown -R mysql:mysql /var/lib/mysql/
#重新启动
systemctl start mysqld
#查看mysql的启动状态
systemctl status mysqld.service
注:如果当文件权限设置完全正确的时候,在日志中还是报错显示无法读取文件内容,则需要进行查看自己的是否是其他文件配置的问题,可能是开启了SELinux导致导致
查看SELinux状态:
/usr/sbin/sestatus -v ##如果SELinux status参数为enabled即为开启状态
SELinux status: enabled
解决方法
vim /etc/selinux/config
#SELINUX=enforcing改为SELINUX=disabled
进入mysql
#登录mysql
mysql -u username -p
重置密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
flush privileges;
开启远程访问权限
use mysql;
CREATE USER 'root'@'%' IDENTIFIED BY '你的密码';
GRANT ALL ON *.* TO 'root'@'%';
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的密码';
FLUSH PRIVILEGES;