Linux中安装MySQL5.7.42的详细教程

 更新时间:2023年09月02日 11:18:00   作者:_不吃猫的鱼_  
这篇文章主要介绍了Linux中安装MySQL5.7.42,本文通过实例图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

1. 首先,下载mysql5.7.42的安装包(下方是下载地址),选择红色框框的下载(注意的是,这个链接只提供5.7的版本下载,可能还会更新,不一定打开就是5.7.42的版本,后续可能会有43 ,44版本,但流程都是一样的) 

2. 将压缩包上传到虚拟机上,可以使用Xshell7 配合 Xftp7 进行上传(这里不做演示)

3. 将压缩包解压

tar -xvf mysql-5.7.42-linux-glibc2.12-x86_64.tar.gz
tar -xvf mysql-5.7.42-linux-glibc2.12-x86_64.tar.gz

 4. 将解压后的文件目录移动到自定义的目录上(我的存放位置是/usr/local/mysql)

mv mysql-5.7.42-linux-glibc2.12-x86_64 /usr/local/mysql

5. 切换路径到local目录下

cd /usr/local/

6. 创建mysql用户组和用户并修改权限(两条命令依次执行)

groupadd mysql  
useradd -r -g mysql mysql

7. 创建数据目录,并赋权限

mkdir -p  /data/mysql  #创建目录  
chown mysql:mysql -R /data/mysql   #赋予权限

8. 配置my.cnf

vim /etc/my.cnf
# 内容如下(将下方的内容复制进去,需要的自己按需修改):
[client]
default-character-set = utf8mb4
[mysql]
default-character-set = utf8mb4
[mysqld]  
bind-address=0.0.0.0   #所有ip均可访问 
port=3306   #端口号 
user=mysql 
basedir=/usr/local/mysql  #mysql路径 
datadir=/data/mysql   #赋予权限路径 
socket=/tmp/mysql.sock 
log-error=/data/mysql/mysql.err  
pid-file=/data/mysql/mysql.pid
#character config  
character-set-client-handshake=FALSE
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4'
# sql_mode=only_full_group_by问题解决办法
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
symbolic-links=0  
explicit_defaults_for_timestamp=true

切记!如果不是按照我的配置来弄的话,自己选择别的目录,这两个位置一定要改!

9. 初始化数据库,进入bin目录

cd /usr/local/mysql/bin/

10. 初始化

./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/data/mysql/ --user=mysql --initialize

11. 查看密码

cat /data/mysql/mysql.err

 执行命令后会出现上方图片的结果,把冒号后的内容复制下来,后面有用

12. 将mysql.server放置到/etc/init.d/mysql中

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

13. 启动服务,并查看服务是否正常启动

service mysql start
ps -ef|grep mysql
# 到此,mysql安装成功

14. 进入mysql(需要在/bin目录下执行命令,执行后需要输入密码,将之前复制的密码粘贴上去)

./mysql -u root -p

出现该页面,证明成功登录进去mysql

15. 开始修改密码(依次执行下方三个命令,注意,下方执行的是mysql的语法,不能把;号忽略,这是要留意的点,建议直接复制,不要手打)

SET PASSWORD = PASSWORD('123456');
 ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
FLUSH PRIVILEGES;

出现上图的信息,证明更改成功

16. 重新测试登录

# 步骤15执行完成后,输入exit,回车退出mysql
#重新输入(/bin目录下)
./mysql -u root -p
# 使用自己设置的密码即可成功进入

 17. 外部图形化软件连接虚拟机数据库

# 先登录数据库
./mysql -u root -p
# 访问mysql库
use mysql

# 刷新
FLUSH PRIVILEGES;

18.  设置MySQL开启自动启动

# 将服务文件拷贝到init.d下,并重命名为mysql
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
# 赋予可执行权限
chmod +x /etc/init.d/mysqld
# 添加服务
chkconfig --add mysqld
# 显示服务列表
chkconfig --list
# 看到3、4、5状态为开或者为 on 则表示成功。如果是 关或者 off 则执行一下
chkconfig --level 345 mysqld on

如果外部连接失败,可能是防火墙的问题,最直接的就是把防火墙关掉

systemctl stop firewalld

这是最快捷的方法,但是有时间限制,也可以开机就禁用

systemctl disable firewalld.service

目前我用的是开放端口的方式,开放端口其实比较贴合实际,如果你用云服务器,显然完全关闭防火墙不是那么好,可以使用开放端口的方式

firewall-cmd --zone=public --add-port=80/tcp --permanent   # 开放80端口   (按需替换端口号就行)
firewall-cmd --zone=public --remove-port=80/tcp --permanent  #关闭80端口
firewall-cmd --reload   # 配置立即生效
查看防火墙所有开放的端口
firewall-cmd --zone=public --list-ports

到此这篇关于Linux中安装MySQL5.7.42的详细教程的文章就介绍到这了,更多相关linux安装mysql5.7.42内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 有效查询MySQL表中重复数据的方法和技巧分享

    有效查询MySQL表中重复数据的方法和技巧分享

    在MySQL数据库中,偶尔会遇到需要查找表中出现的重复数据的情况,这种情况下,我们可以通过编写一些SQL查询语句轻松地找到并处理这些重复行,本文将介绍一些常见的方法和技巧,帮助你有效地查询MySQL表中的重复数据,需要的朋友可以参考下
    2023-10-10
  • mysql8.0 用户角色管理及授权的实现

    mysql8.0 用户角色管理及授权的实现

    MySQL是一种常见的关系型数据库管理系统,它提供了强大的安全机制来管理用户权限,本文主要介绍了mysql8.0 用户角色管理及授权的实现,具有一定的参考价值,感兴趣的可以了解一下
    2024-04-04
  • MySQL8.0与MySQL5.7的区别详解

    MySQL8.0与MySQL5.7的区别详解

    MySQL8.0是2018年4月20日发布的全球最受欢迎的开源数据库的一个非常令人兴奋的新版本,下面这篇文章主要给大家介绍了关于MySQL8.0与MySQL5.7区别的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-01-01
  • mysql中tonumber函数使用及注意事项

    mysql中tonumber函数使用及注意事项

    在MySQL中,没有直接的TO_NUMBER函数,但可以通过CAST或CONVERT实现字符串到数字的转换,转换前需明确数据类型,了解转换语法,并注意错误处理、空值处理、格式合规性和精度问题,本文介绍mysql中tonumber函数使用及注意事项,感兴趣的朋友一起看看吧
    2025-02-02
  • mysql 5.1版本修改密码及远程登录mysql数据库的方法

    mysql 5.1版本修改密码及远程登录mysql数据库的方法

    这篇文章主要介绍了mysql 5.1版本修改密码及远程登录mysql数据库的方法,需要的朋友可以参考下
    2017-04-04
  • MYSQL命令行导入导出数据库详解

    MYSQL命令行导入导出数据库详解

    这篇文章主要详细介绍了MYSQL命令行进行导入导出数据库操作的方法,并且分win系统和Linux系统介绍了mysql备份和还原的方法,非常的详细,希望对大家能有所帮助
    2014-09-09
  • windows7下启动mysql服务出现服务名无效的原因及解决方法

    windows7下启动mysql服务出现服务名无效的原因及解决方法

    这篇文章主要介绍了windows7下启动mysql服务出现服务名无效的原因及解决方法,需要的朋友可以参考下
    2014-06-06
  • 解决MySQL Sending data导致查询很慢问题的方法与思路

    解决MySQL Sending data导致查询很慢问题的方法与思路

    这篇文章主要介绍了解决MySQL Sending data导致查询很慢问题的方法与思路,感兴趣的小伙伴们可以参考一下
    2016-04-04
  • 浅谈MySQL中不等号索引问题

    浅谈MySQL中不等号索引问题

    本文主要介绍了浅谈MySQL中不等号索引问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-03-03
  • MySQL两种临时表的用法详解

    MySQL两种临时表的用法详解

    这篇文章主要介绍了MySQL两种临时表的用法详解,.内容比较详细,这里分享给大家,供大家参考,学习。
    2017-10-10

最新评论