linux centos7下源码 tar安装mysql5.7.30或mysql5.7.22 图文详解

63 篇文章 121 订阅 ¥9.90 ¥99.00
38 篇文章 0 订阅
本文提供了在CentOS7系统下,通过源码安装MySQL5.7.30或5.7.22的详细步骤,包括安装依赖、下载解压、创建用户组和用户、初始化数据库、配置my.cnf、启动服务以及设置root密码和授权新用户。还解决了在安装过程中可能遇到的libaio和libncurses库的问题。
摘要由CSDN通过智能技术生成

之前用的rpm安装的每次安装都是最新的,,,导致每次版本不统一。。。

现在用tar包安装5.7.22和5.7.20一样的   (5.7.30安装也一样)

(下载最好下载最新版本 mysql如果要安装最好安装5.7.30或mysql8.1+的版本 mysql5.7漏洞mysql5.7漏洞 本文最后更新:2020-12-16)

官网地址 MySQL :: Download MySQL Community Server

MySQL :: MySQL 5.7 Reference Manual :: 4.9 Environment Variables  mysq的变量说明

国内华为云的镜像  Index of mysql-local/Downloads/MySQL-5.7 

官网下载地址,建议用迅雷下载
https://downloads.mysql.com/archives/community/

这是最新的5.7.35
https://mirrors.huaweicloud.com/mysql/Downloads/MySQL-5.7/mysql-5.7.35-linux-glibc2.12-x86_64.tar.gz

国内华为云的镜像  https://mirrors.huaweicloud.com/mysql/Downloads/MySQL-5.7/mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz   也可以去国内其他镜像找 这是华为官方镜像

1. 安装依赖  yum install -y cmake make gcc gcc-c++ libaio ncurses ncurses-devel numactl

 cd /usr/local/src

链接:https://pan.baidu.com/s/18tSRnB7FBb7Ak9Sr665Jeg 密码:86nj  这是5.7.22版本,下载上传到服务器
 wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz(不能下载了)

如果上面链接不能下载,去官网找,下面的步骤都一样

 wget  https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz(用这个,后续的步骤都一样)

解压     tar -zxvf mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz       

将解压的复制到   /usr/local/mysql 目录       cp -r mysql-5.7.22-linux-glibc2.12-x86_64   /usr/local/mysql

2、添加系统mysql组和mysql用户 

添加系统mysql组     groupadd mysql

添加mysql用户 useradd -r -g mysql mysql 添加完成后可用id mysql查看

3、安装数据库

切到mysql目录 cd /usr/local/mysql

修改当前目录拥有者为mysql用户 chown -R mysql:mysql ./

安装数据库 bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

生成了临时密码

(看到有的报这个错
bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

解决方法:yum install -y libaio  //安装后在初始化就OK了)

执行以下命令创建RSA private key  (图在最后)

  bin/mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data

修改当前目录拥有者为mysql用户 chown -R mysql:mysql ./

修改当前data目录拥有者为mysql用户 chown -R mysql:mysql data

4、配置my.cnf

vim /etc/my.cnf    (直接把下面内容复制上就行)

简单配置

[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
#不区分大小写 
lower_case_table_names = 1
#不开启sql严格模式
sql_mode = "STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
log-error=/var/log/mysqld.log
pid-file=/usr/local/mysql/data/mysqld.pid

标准配置

[mysqld]
user=mysql
slow_query_log = 1
log_error = /usr/local/mysql/mysql.err
slow_query_log  = ON     #开启慢查询
long_query_time  =4     #设置慢查询时间 超过一秒的记录

log_bin = mysql-bin
server_id = 185
log-bin=mysql-bin
log-bin-index=master-bin.index
expire_logs_days = 180 
binlog_format=row
slave_skip_errors=1062

log_slave_updates=1
max_connections = 1000
#max_connection_errors=1000
wait_timeout=864000 
interactive_timeout=864000

local-infile=0
character_set_server=utf8
init_connect='SET NAMES utf8'
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/usr/local/mysql/data/mysql.sock

symbolic-links = 0 
#不区分大小写 
lower_case_table_names = 1
##不开启sql严格模式
sql_mode = "STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
log-error=/var/log/mysqld.log
pid-file=/usr/local/mysql/data/mysqld.pid

max_allowed_packet = 15M

添加开机启动     cp /usr/local/mysql/support-files/mysql.server  /etc/init.d/mysqld

修改   vim /etc/init.d/mysqld   

添加路径 在46行   

 basedir=/usr/local/mysql
 datadir=/usr/local/mysql/data

5、启动mysql   service mysqld start 

 加入开机起动    chkconfig --add mysqld  

6、登录修改密码 mysql -uroot -p 上面初始化时的密码

如果出现错误 需要添加软连接  ln -s /usr/local/mysql/bin/mysql /usr/bin

第一件事先修改密码

alter user 'root'@'localhost' identified by 'root';   

GRANT ALL PRIVILEGES ON *.* TO 'root1'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;   #授权新用户

flush privileges;    #刷新权限

create database db_name default charset utf8; 创建数据

至此安装完毕。

如果有报错的

mysql: error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or director

 ln -s /usr/lib64/libtinfo.so.6 /usr/lib64/libtinfo.so.5
 ln -s /usr/lib64/libncurses.so.6 /usr/lib64/libncurses.so.5

 原因:系统中并没有安装对应5版本的库文件,这个时候可以将高版本创建软连接到5版本

 
 

喜欢的支持一下,点个赞再走呗,谢谢☺☺☺。

评论 71
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

舰长115

码字不易如果觉得还不错谢谢鼓励

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值