安装前检查服务器glibc版本,下载对应版本包
rpm -qa | grep glibc
mysql安装包及依赖包已整理好,下载地址:https://pan.quark.cn/s/3137acc814c0,下载即可安装
一、下载MySQL
mysql安装包及依赖包已整理好,下载地址:https://pan.quark.cn/s/3137acc814c0,下载即可安装
网站进入mysql官网 ,https://dev.mysql.com/, 进入后滑动到最下面在DOWNLOADS栏中 选择MySQL Community Server(mysql社区版)
libc版本的mysql需要libaio依赖,需要下载libaio依赖安装
将下载的压缩包上传服务器
二、安装依赖 libaio
mysql安装包及依赖包已整理好,下载地址:https://pan.quark.cn/s/3137acc814c0,下载即可安装
[root@localhost mysql]# rpm -Uvh libaio-0.3.109-13.el7.x86_64.rpm
三、安装mysql
# 解压
[root@localhost mysql]# tar -xvf mysql-8.0.33-linux-glibc2.12-x86_64.tar.xz
# 移动目录
[root@localhost mysql]# mv mysql-8.0.33-linux-glibc2.12-x86_64 /home/data/mysql8
# 创建数据存放目录
[root@localhost mysql8]# mkdir /home/data/mysql8/data
# 创建用户组
[root@localhost mysql8]# groupadd mysql
[root@localhost mysql8]# useradd -g mysql mysql
# 修改用户文件夹权限
[root@localhost mysql8]# chown -R mysql.mysql /home/data/mysql8
检查用户权限是否修改
生成my.cnf文件
[root@localhost data]# touch /etc/my.cnf
编辑my.cnf文件如下:
[mysql]
default-character-set=utf8
# Mysql数据存放的绝对路径
datadir=/home/data/mysql8/data
[mysqld]
port=3306
default_authentication_plugin=mysql_native_password
# 套接字文件 必须在安装目录下
socket = /home/data/mysql8/mysql.sock
# Mysql安装的绝对路径
basedir=/home/data/mysql8
# Mysql数据存放的绝对路径
datadir=/home/data/mysql8/data
character-set-server=utf8
default-storage-engine=InnoDB
collation-server=utf8_unicode_ci
init_connect='SET NAMES utf8'
innodb_buffer_pool_size=512M
innodb_flush_log_at_trx_commit=0
innodb_lock_wait_timeout=31536000
innodb_log_buffer_size=8M
innodb_log_file_size=16M
join_buffer_size=200M
key_buffer_size=400M
log-error=/home/data/mysql8/mysql.log
pid-file=/home/data/mysql8/mysql.pid
log_error_verbosity=1
max_allowed_packet=2000M
max_connections=1000
max_heap_table_size=6400M
myisam_max_sort_file_size=64M
myisam_sort_buffer_size=32M
read_buffer_size=4M
read_rnd_buffer_size=4000M
server_id=1
skip-external-locking=on
sort_buffer_size=256kb
table_open_cache=256
thread_cache_size=16
tmp_table_size=64M
wait_timeout=31536000
interactive_timeout=31536000
sql_mode="STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION"
group_concat_max_len=10240
[client]
port=3306
default-character-set=utf8
socket = /home/data/mysql8/mysql.sock
再次更改文件夹权限
[root@localhost mysql8]# chown -R mysql:mysql /home/data/mysql8
初始化数据库
[root@localhost mysql8]# /home/data/mysql8/bin/mysqld --user=mysql --initialize --basedir=/home/data/mysql8 --datadir=/home/data/mysql8/data
# 查看初始密码
[root@localhost mysql8]# vi /home/data/mysql8/mysql.log
修改配置,增加开机启动(注意:此处检查mysql.server文件中的数据存放目录)
[root@localhost mysql8]# cp /home/data/mysql8/support-files/mysql.server /etc/init.d/mysqld
[root@localhost mysql8]# chmod +x /etc/init.d/mysqld
[root@localhost mysql8]# chmod +x /etc/rc.d/init.d/mysqld
[root@localhost mysql8]# chkconfig --add mysqld
[root@localhost mysql8]# chkconfig --list mysqld
修改环境变量,并重载环境变量文件,打开 /etc/profile 在底部添加如下命令
export PATH=$PATH:/home/data/mysql8/bin:/home/data/mysql8/lib
export PATH
[root@localhost mysql8]# source /etc/profile
启动mysql
[root@localhost mysql8]# service mysql start
登录MySQL
mysql -u root -p
password: 为上一步查看的临时密码
修改密码
##如果不修改密码,无法操作数据库
alter user 'root'@'localhost' identified by 'root123'
## 执行完后,重新登录MySQL
退出命令:quit
修改只能本地访问
use mysql;
select host from user where user='root';
如果host这里是localhost( 如果不改则远程连接报错,图中已经修改 ),我们可以将其改为 %
## 修改语句:
update user set host = '%' where user ='root';
执行完成后刷新配置
flush privileges;