美文网首页数据库数据库Linux
CentOS7下源码编译安装MySQL5.7详解

CentOS7下源码编译安装MySQL5.7详解

作者: 刘禹锡_c886 | 来源:发表于2020-11-15 12:41 被阅读0次

操作系统:CentOS7
安装版本:mysql5.7

【官网】https://dev.mysql.com/downloads/mysql/

一、安装准备

1)查看是否有旧版本MySql,有就逐个删除,避免冲突

rpm -qa | grep mysql
#rpm -e mysql.rpm --nodeps      #--nodeps 此处为不验证依赖删除,非必带

2)清除yum里所有mysql依赖包

yum remove mysql-libs   #个别是 mariadb-libs——yum remove mariadb-libs

3)查看是否有安装libaio,没有则安装

rpm -qa | grep libaio
#yum -y install libaio   #没有则安装

二、下载解压安装

1)下载mysql5.7全家桶
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.32-1.el7.x86_64.rpm-bundle.tar

1.png

2)解压mysql5.7全家桶
tar -xvf mysql-5.7.32-1.el7.x86_64.rpm-bundle.tar

2.png

3)按照依赖关系依次安装rpm包,依赖关系依次为common→libs→client→server

rpm -ivh mysql-community-common-5.7.32-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.32-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.32-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.32-1.el7.x86_64.rpm

# 可能会出现的报错
 error: Failed dependencies:
 libnuma.so.1()(64bit) is needed by mysql-community-server-5.7.32-1.el7.x86_64
 libnuma.so.1(libnuma_1.1)(64bit) is needed by mysql-community-server-5.7.32-1.el7.x86_64
 libnuma.so.1(libnuma_1.2)(64bit) is needed by mysql-community-server-5.7.32-1.el7.x86_64

# 需要安装 numactl
yum  install numactl -y


3.png

三、启动mysql

1)mysql基本操作命令

systemctl start mysqld.service    启动mysql
systemctl status mysqld.service  查看mysql状态
systemctl stop mysqld.service   关闭mysql

查看mysql进程 ps ax | grep mysql
查看3306端口 netstat -anop | grep 3306

2)启动mysql及查看root的mysql原始登录密码

#service mysqld {start|stop|force-quit|restart|reload|status|configtest}
service mysqld start #启动命令
grep 'temporary password' /var/log/mysqld.log
5.png
3)输出命令,用户是root,密码是刚刚查看的那个,成功进入后就安装成功了
mysql -uroot -p
4)在5.6后,mysql内置密码增强机制,低强度密码会报错,需要重新设置密码

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

set password for root@localhost=password('password');

5)授予root用户远程访问权限

#(注意:下面命令开启的IP是 192.168.31.132,如要开启所有的,用%代替IP)
mysql> use mysql;
mysql> grant all privileges on *.* to 'root'@'192.168.31.132' identified by 'password' with grant option;
mysql> flush privileges; 
# root 是用户,192.168.31.132是指定IP,%是所有IP,password是root用户远程登录的密码

ps:MySQL8不支持上面远程访问权限配置,MySQL8的请使用以下方法

mysql> use mysql;
mysql> CREATE USER 'root'@'%' IDENTIFIED BY 'root';  # 创建用户
mysql> GRANT ALL privileges on *.* to 'root'@'%';    # 赋予权限
mysql> alter user 'root'@'%' identified with mysql_native_password by 'root'; #更新用户密码
mysql> flush privileges; # 刷新权限

相关文章

网友评论

    本文标题:CentOS7下源码编译安装MySQL5.7详解

    本文链接:https://www.haomeiwen.com/subject/smjrbktx.html