Centos7安装MySQL8.0详细教程(压缩包安装方式)
下载MySQL
下载地址: https://downloads.mysql.com/archives/community/

这里需要知道自己的linux的glibc版本,不然安装的时候会提示glibc版本过低。查询方法如下:
rpm -q glibc

下载之后,将压缩包上传到服务器上,准备安装MySQL。

三、安装步骤
说明:本次安装教程,是在之前没有安装过MySQL的系统上进行的,如果你之前
安装过MySQL需要将MySQL相关的配置进行删除,包括用户组,以及MySQL相
关的文件夹,避免在安装过程中出现错误。
1、解压安装包
将MySQL压缩包解压到/usr/local/mysql目录中。
mkdir -p /usr/local/mysql tar --strip-components=1 -xvf mysql-8.0.39-linux-glibc2.17-x86_64.tar.xz -C /usr/local/mysql

2、创建MySQL组和用户
# 创建用户组 groupadd mysql # 创建用户并加入mysql用户组 useradd -g mysql mysql

3、更改所属的组和用户
# 进入到/usr/local目录
cd /usr/local chown -R mysql mysql/ chgrp -R mysql mysql/ chown -R mysql:mysql /usr/local/mysql # 进入到mysql目录,创建data和logs目录 cd mysql && mkdir -p data logs && chown -R mysql:mysql data logs

4、新建MySQL配置文件
vim /etc/my.cnf
[mysql] #设置mysql客户端默认字符集 default-character-set=utf8 [mysqld] #禁用dns解析 skip-name-resolve #设置3306端口 port = 3306 #设置mysql的安装目录 basedir=/usr/local/mysql #设置mysql数据库的数据的存放目录 datadir=/usr/local/mysql/data #允许最大连接数 max_connections=200 #允许连接失败的次数 max_connect_errors=10 #服务端使用的字符集默认为8比特编码的latin1字符集 character-set-server=utf8 #创建新表时将使用的默认存储引擎 default-storage-engine=INNODB #默认使用“mysql_native_password”插件认证 default_authentication_plugin=mysql_native_password #设置服务器接收数据包大小 max_allowed_packet=64M #配置错误日志 log_error=/usr/local/mysql/logs/mysql-error.log #配置进程文件 pid-file=/usr/local/mysql/mysql.pid #设置客户端发送数据包大小 max_allowed_packet=64M #使MySQL不区分大小写 lower_case_table_names=1
给配置文件赋予权限
chown 777 /etc/my.cnf
5、初始化MySQL
./bin/mysqld --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ --initialize

6、添加mysql服务,并设置开机自启
cp -a /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql chmod +x /etc/rc.d/init.d/mysql chkconfig --add mysql chkconfig --level 345 mysql on ln -s /usr/local/mysql/bin/mysql /usr/bin

四、启动MySQL服务
# 启动
service mysql start # 查看状态 service mysql status # 停止 service mysql stop

五、查看临时密码,并登陆MySQL
cat /usr/local/mysql/logs/mysql-error.log

mysql -u root -p
填写临时密码,注意密码输入的时候是不可见的,直接复制粘贴密码即可。

六、修改密码
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
初次使用的时候,需要先修改密码,否则会报以上错误
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456'; flush privileges;

七、开启远程访问
如果你需要开启远程访问,可以用以下方式完成
注意事项:如果是虚拟机,记得关闭防火墙或者添加3306端口开放,如果是服务器,记得在服务器后台中的安全组中添加3306端口开放,
否则远程连接的时候,会连接不上,在远程连接的时候,切勿使用弱密码,否则数据库会被脚本工具扫描,会造成不可估量的损失。
use mysql; update user set host = '%' where user = 'root'; flush privileges; select host, user from user;




