当前位置:网站首页>Linux下载安装mysql5.7版本教程最全详解
Linux下载安装mysql5.7版本教程最全详解
2022-07-29 15:10:00 【m0_67391521】
linux下安装mysql 5.7.31
下载mysql文件
下载mysql文件5.7.31包,我已经上传到文件中。也可以点击下载 如下图所示:
删除Linux下默认安装的MariaDB
# 查找mariadb安装包名字
rpm -qa | grep -i mariadb
# 卸载mariadb安装包,mariadb-libs-5.5.52-1.x86 是上一条命令查出的结果
rpm -e --nodeps mariadb-libs-5.5.52-1.x86

上传文件并解压
创建要上传的目录,这里我的目录为
cd /opt/myinstall
mkdir mysql
将mysql安装包上传至目录下,然后解压
tar -xvf mysql-5.7.31-1.el7.x86_64.tar

安装
rpm -ivh mysql-community-common-5.7.31-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.31-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.31-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.31-1.el7.x86_64.rpm
安装报错
如果安装最后一步server的时候,报错,说明缺少依赖包libaio
可以点击下载 然后下载依赖包
然后把下载的包上传到linux后执行
rpm -ivh libaio-0.3.112-1.el8.x86_64.rpm
然后在重新执行就不会报错了
rpm -ivh mysql-community-server-5.7.31-1.el7.x86_64.rpm
至此,mysql数据库就安装完成了
启动mysqld服务
执行以下命令
# 启动服务 命令后有空格会报错
systemctl start mysqld
# 查看服务状态
systemctl status mysqld
其它命令
# 停止服务
systemctl stop mysqld
# 重启服务
systemctl restart mysqld
修改mysql的登录密码
设置跳过登录密码
vi /etc/my.cnf
在最后一行添加代码
# 跳过密码登录
skip-grant-tables

保存后,然后重启服务
systemctl restart mysqld
登录mysql,刚才已经设置了跳过密码登录,所以我们只要输入登录命令,回车两次就可以了
mysql -u root -p
查看root用户的密码命令
修改密码为:123456
如果执行修改密码的sql报错
修改validate_password_policy参数的值, 修改允许的密码长度
mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=1;
然后重启服务
输入quit退出mysql交互界面
此时把刚才配置的跳过密码配置代码去掉或者注释掉就可以了。
然后再次重启mysqld服务
systemctl restart mysqld
然后输入命令
mysql -u root -p
输入刚才设置的密码:123456,出现mysql交互则说明刚才设置成功。
设置编码格式
修改配置文件
vi /etc/my.cnf
# 在[mysqld]下添加
collation_server=utf8_general_ci
character_set_server=utf8
default-storage-engine=INNODB
# 在[client]下添加(如果没有[client],则创建[client])
[client]
default_character-set=utf8
保存,然后重启mysql服务
systemctl restart mysqld
登录mysql
mysql -u root -p 123456
查看mysql编码
show variables like 'character_set_%';

此时可以查看修改mysql编码已经为UTF-8了
开启远程连接
登录mysql
mysql -u root -p 123456
执行以下命令
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456';
# 立即生效
mysql> FLUSH PRIVILEGES;
刚才命令解释
123456是登录密码
*.* 表示所有数据库下的所有表
'root'@'%' 表示所有主机的root
如果设置报错
出现这个原因是因为密码设置太过于简单,mysql有密码强度校验(密码设置时必须包含大小写字母,特殊符号,数字,并且长度大于8位)
解决办法:必须修改两个全局配置参数(临时更改,如果重新进入,需要重新修改)
mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=1;
然后重新执行命令
修改配置文件
vi /etc/my.cnf
bind-address如果是127.0.0.1,mysql只接受localhost,不接受远程连接。在bind-address后面增加远程访问IP地址或者禁掉这句话就可以让远程机登陆访问了。
如果地址是 0.0.0.0, 服务接受所有IPV4的接口;
如果地址是 ::, t服务接受所有IPV4和 IPv6 的接口;
修改端口
登录mysql
mysql -u root -p 123456
查看端口
show global variables like ‘port’;

可以看出现在的端口是3306
修改配置文件
vi /etc/my.cnf

然后保存退出
重启mysql
systemctl restart mysqld
此时就修改端口完成
边栏推荐
猜你喜欢
随机推荐
长江存储计划今年产能提高一倍,并试产192层3D NAND
PHP 读取/导出 CSV文件
Mysql数据库及表的建立
高通发布全新屏下指纹传感器:识别区域增大77%,识别速度提升50%
RestTemplate下载文件的另一种方式
VMware 16.1软件安装包下载及安装教程
Qt learning on the first day
Micro combat | centralized configuration service center Config asymmetric encryption and security management
Contribution and writing required documents - OpenHarmony developer documentation style guide
人脸关键点预测以及归一化
详解微处理器CPU的系统结构
MySQL Index Common Interview Questions (2022 Edition)
你真的了解Redis的持久化机制吗?
突破性能天花板!亚信数据库支撑 10 多亿用户,峰值每秒百万交易
不会多线程还想进BAT?精选19道多线程面试题,有答案边看边学
开源数据库连接池的使用及其工具类
3C数码行业供应商管理方案——与供应商结为“成长共同体”
Do you really understand the persistence mechanism of Redis?
【 LeetCode 】 88. Merging two orderly array
数商云SCM供应链系统方案服务亮点:生产管理更智能、产业供应链协同管理更便捷









