CentOS7安装MySQL5.7

1、CentOS7 RPM方式安装MySQL5.7

先在官网上下载RPM的安装包,然后上传到服务器,解压缩

https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.36-1.el7.x86_64.rpm-bundle.tar

[root@localhost ~]# mkdir /mysql
[root@localhost ~]# cd /mysql
[root@localhost mysql]# ls
[root@localhost mysql]# tar xvf mysql-5.7.36-1.el7.x86_64.rpm-bundle.tar

首先限制mariadb相关软件包,然后安装

[root@localhost mysql]# yum remove mariadb-libs
[root@localhost mysql]# rpm -ivh mysql-community-client-5.7.36-1.el7.x86_64.rpm mysql-community-common-5.7.36-1.el7.x86_64.rpm mysql-community-libs-5.7.36-1.el7.x86_64.rpm mysql-community-server-5.7.36-1.el7.x86_64.rpm
------启动服务------
[root@localhost ~]# systemctl start mysqld
[root@localhost ~]# systemctl enable mysqld

------登录后修改密码------
mysql> ALTER USER root@localhost identified by 'MySQL@123';
2、CentOS7 通用二进制方式安装MySQL5.7

先在官网下载glibc版本的MySQL,然后上传的服务器,解压缩

https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz

安装依赖包

[root@localhost mysql]# yum install libaio -y
[root@localhost ~]# groupadd -r mysql
[root@localhost ~]# useradd -r -g mysql -s /bin/false mysql
[root@localhost ~]# tar xf mysql-5.7.36-linux-glibc2.12-x86_64.tar.gz -C /usr/local/
[root@localhost ~]# ln -sv /usr/local/mysql-5.7.36-linux-glibc2.12-x86_64/ /usr/local/mysql
[root@localhost ~]# mkdir -p /data/mysql

------初始化------
[root@localhost ~]# /usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/data/mysql

------拷贝脚本并修改/etc/init.d/mysql.server对应部分------
[root@localhost ~]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/
basedir=/usr/local/mysql
datadir=/data/mysql
------修改/etc/my.cnf对应部分------
[root@localhost ~]# vim /etc/my.cnf
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/var/log/mysqld.log
pid-file=/data/mysql/mysql.pid

------写环境变量------
[root@localhost ~]# vim /etc/profile.d/mysql.sh
export PATH=$PATH:/usr/local/mysql/bin
source /etc/profile.d/mysql.sh

------启动服务------
[root@localhost ~]# chkconfig --add mysql.server
[root@localhost ~]# chkconfig mysql.server on
[root@localhost ~]# systemctl start mysql.server

------登录后修改密码------
mysql> ALTER USER root@localhost identified by 'MySQL@123';
3、使用源码安装MySQL 5.7

https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-boost-5.7.36.tar.gz

------下载依赖------
[root@localhost ~]# yum install make gcc-c++ cmake bison-devel ncurses-devel openssl-devel -y
[root@localhost ~]# groupadd -r mysql
[root@localhost ~]# useradd -r -g mysql -s /bin/false mysql
[root@localhost ~]# mkdir /data/mysql -p
[root@localhost ~]# ls
anaconda-ks.cfg  mysql-boost-5.7.36.tar.gz
[root@localhost ~]# tar xf mysql-boost-5.7.36.tar.gz -C /usr/local/src/
[root@localhost ~]# cd /usr/local/src/mysql-5.7.36/
[root@localhost mysql-5.7.36]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
> -DMYSQL_DATADIR=/data/mysql -DSYSCONFDIR=/etc \
> -DWITH_BOOST=/usr/local/src/mysql-5.7.36/boost
[root@localhost mysql-5.7.36]# make

在这里插入图片描述

[root@localhost mysql-5.7.36]# make install
[root@localhost mysql-5.7.36]# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/
[root@localhost mysql-5.7.36]# chkconfig --add mysql.server
[root@localhost mysql-5.7.36]# chkconfig mysql.server on
[root@localhost mysql-5.7.36]# cat /etc/profile.d/mysql.sh
export PATH=$PATH:/usr/local/mysql/bin
[root@localhost mysql-5.7.36]# source /etc/profile.d/mysql.sh

------修改/etc/my.cnf对应部分------
vim /etc/my.cnf
datadir=/data/mysql
socket=/tmp/mysql.sock
log-error=/var/log/mysqld.log
pid-file=/data/mysql/mysql.pid

------初始化------
[root@localhost mysql-5.7.36]# /usr/local/mysql/bin/mysqld --initialize --user=mysql --datadir=/data/mysql --basedir=/usr/local/mysql/

------启动服务------
[root@localhost mysql-5.7.36]# systemctl start mysql.server

------登录后修改密码------
mysql> ALTER USER root@localhost identified by 'MySQL@123';
4、简述MySQL体系结构

MySQL的架构自顶向下大致可以分为网络连接层、数据库服务层、存储引擎层和系统文件层四大部分

在这里插入图片描述

  • 网络连接层位于整个MySQL体系架构的最上层,主要担任客户端连接器的角色,提供与MySQL服务器建立连接的能力。

  • 数据库服务层是整个数据库服务器的核心,主要包括了连接池、系统管理和控制工具、SQL接口、解析器、查询优化器和缓存等部分。

    • 连接池:主要负责存储和管理客户端与数据库的连接信息,连接池里的一个线程负责管理一个客户端到数据库的连接信息。

    • 系统管理和控制工具:提供数据库系统的管理和控制功能,例如对数据库中的数据进行备份和恢复,保证整个数据库的安全性,提供安全管理,对整个数据库的集群进行协调和管理等。

    • SQL接口:主要负责接收客户端发送过来的各种SQL命令,并将SQL命令发送到其他部分,并接收其他部分返回的结果数据,将结果数据返回给客户端。

    • 解析器:主要负责对请求的SQL解析成一棵“解析树”,然后根据MySQL中的一些规则对“解析树”做进一步的语法验证,确认其是否合法。

    • 查询优化器:在MySQL中,如果“解析树”通过了解析器的语法检查,此时就会由优化器将其转化为执行计划,然后与存储引擎进行交互,通过存储引擎与底层的数据文件进行交互。

    • 缓存:MySQL的缓存是由一系列的小缓存组成的,例如:MySQL的表缓存,记录缓存,MySQL中的权限缓存,引擎缓存等。MySQL中的缓存能够提高数据的查询性能,如果查询的结果能够命中缓存,则MySQL会直接返回缓存中的结果信息。

  • 存储引擎层主要负责数据的写入和读取,与底层的文件进行交互。MySQL中的存储引擎是插件式的,服务器中的查询执行引擎通过相关的接口与存储引擎进行通信,同时,接口屏蔽了不同存储引擎之间的差异。MySQL中,最常用的存储引擎就是InnoDB和MyISAM。

  • 系统文件层主要包括MySQL中存储数据的底层文件,与上层的存储引擎进行交互,是文件的物理存储层。其存储的文件主要有:日志文件、数据文件、配置文件、MySQL的进行pid文件和socket文件等。

5、使用mysql客户端登录服务器,重置root密码

使用navicat连接到数据库,打开连接,然后点击用户,双击要修改密码的用户,修改后保存就成功了
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值