引言
MySQL 5.7 为公司、企业常用的MySQL版本。
正在学习或正在工作的小伙伴推荐相关教程按照5.7的版本来学习、操作。
一、下载MySQL
1.1 查看系统位数
根据对应的系统位数,选择需要下载的文件。
Linux系统输入 getconf LONG_BIT
命令即可查看系统位数
输出多少就是多少位。
1.3 下载安装包
根据输出的位数,下载对应的版本:
下载地址: https://www.123pan.com/s/GvBnjv-yjCF3
二、上传MySQL压缩包到Linux并解压
2.1 上传
这里推荐使用xftp或者WinScp等工具直接拖拽上传到某个目录。(摆烂)
- Xshell6_Plus下载(不要钱):https://pan.quark.cn/s/6da216edc547
- WinScp下载(不要钱):https://pan.quark.cn/s/c6cef04e9b4d
我一般是在opt目录下新建一个software文件夹用来存放压缩包安装包之类的
mkdir /opt/software
下面我会按照这个目录结构来写解压的教程。
2.2 解压
- 切换到压缩包所在位置
cd /opt/software
- 执行以下命令:(解压到指定目录一般是放在/usr/local下)
tar zxvf mysql-5.7.38-linux-glibc2.12-x86_64.tar.gz -C /usr/local
解压完成
改个名字:
# 切换到local目录
cd /usr/local
# 修改文件夹名称
mv mysql-5.7.38-linux-glibc2.12-x86_64/ mysql
三、创建MySQL用户组和用户
# 创建MySQL用户组
groupadd mysql
# 添加MySQL用户并添加到MySQL用户组
useradd -r -g mysql mysql
四、创建数据目录并赋予权限
4.1 创建data目录
- 切换目录
cd /usr/local/mysql
(注意文件夹名字) - 创建data目录
mkdir data
(注意别创建错位置)
4.2 赋予权限
chown mysql:mysql -R /usr/local/mysql/data/
五、配置my.cnf文件的文件
编辑my.cnf文件 vim /etc/my.cnf
复制以下内容(注意修改为自己的目录),按 i 进行插入内容,删除所有原有内容,粘贴以下内容,按ecs——按:——输入wq 保存。操作完成后效果如下图:
[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=/usr/local/mysql
# 设置mysql数据库的数据的存放目录
datadir=/usr/local/mysql/data
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。
max_connect_errors=10
# 服务端使用的字符集默认为utf8mb4
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
#mysql_native_password
default_authentication_plugin=mysql_native_password
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4
六、初始化MySQL
注意看图是在哪个目录下操作的
- 切换目录
cd /usr/local/mysql/bin
- 运行以下编译初始化命令
注意看清楚自己的目录!!!
- –defaults-file:默认配置文件地址
- –datadir:是刚刚创建的data数据目录(不要闭着眼复制!你的目录可能跟我不一样!)
- –basedir:是MySQL安装目录(你的目录名字可能跟我不一样,我的是mysql,注意注意!!!)
- –user:刚刚创建的mysql用户
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql --initialize
如上图所示,即初始化完成,注意记一下初始密码(上图圈红框处),没记自己百度如何找回或重新安装。
七、启动MySQL服务&修改初始密码
- 启动服务
/usr/local/mysql/support-files/mysql.server start
出现以上截图内容即服务成功。
- 修改初始密码
# 切换目录
cd /usr/local/mysql/bin
# 登录命令
./mysql -u root -p
# 设置密码
SET PASSWORD = PASSWORD('ok');
# 设置用户的访问密码用不过期
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
#刷新权限
FLUSH PRIVILEGES;
九、Navicat 连接
9.1 2002错误代码,可能是防火墙没有开放3306端口。
# 开启端口3306
firewall-cmd --zone=public --add-port=3306/tcp --permanent
# 重启防火墙
firewall-cmd --reload
# 查看已经开放的端口
firewall-cmd --list-ports
9.2 1130等没有允许远程登陆异常
在已经登录MySQL的状态下依次运行以下命令:
# 访问mysql库
use mysql
# 修改root用户能在任何host访问
update user set host = '%' where user = 'root';
# 刷新
FLUSH PRIVILEGES;
八、开机自启
- 依次运行以下三条命令,添加mysql 软连接并重启mysql服务
ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
service mysql restart
- 赋予权限
chmod +x /etc/init.d/mysql
- 添加服务
chkconfig --add mysql
- 显示服务列表
chkconfig --list
如上图所示,如果是2,3,4,5 都是开启的话则成功。
如果不是,可运行以下命令开启:
chkconfig --level 2345 mysql on
- 重启服务器
reboot
- 查看MySQL进程是否启动
ps -aux | grep mysql
成功。
超详细的教程,帮到你的话一键三连!!!点赞、收藏、关注哦。