Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >​ mysql编译安装脚本

​ mysql编译安装脚本

作者头像
用户1560186
发布于 2020-01-02 08:19:54
发布于 2020-01-02 08:19:54
1.9K00
代码可运行
举报
文章被收录于专栏:运维录运维录
运行总次数:0
代码可运行

《复仇者联盟4:终局之战》队长 左手拿盾,右手持锤.

开始之前

这篇文章发布于 2015年,内容是介绍使用源码方式编译安装 mysql-5.6 ,时间回到 2015年,那时候 Docker还在蓄能阶段没有全面爆发。

业务上云、使用云数据库,也只是刚刚拉开大幕不久,技术人员更多的是尝试IDC机房+云服务方式这种混合方式,即先把一部分业务迁到云上,另一部分业务仍然使用传统IDC托管方式。

那么都 9012 年了源码方式编译安装mysql过时了吗?谁还自己部署mysql数据库呢?上云啊、用容器啊、多好多便捷!

没有过时、仍然有效,挨踢圈有一句名言说的好 "没有最好的方案,只有最适合的方案",虽然上云、容器化、微服务化是大势所趋,不过某些场景下还是有源码编译安装的需求。

环境描述
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
系统版本: CentOS 7.2 amd64
mysql版本: MySql-5.6.25
脚本依赖: 需要联网 yum 安装 cmake、gcc 等工具。

1. 目录结构

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
tree ./
./
├── conf
│   └── my.cnf
├── mysql-5.6.25.tar.gz
└── mysql-server.sh

1 directory, 3 files

2. mysql 配置文件

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 示例 2cpu/4GB虚拟机,请根据实际情况配置参数。
awk '!/^(#|$)/' conf/my.cnf

[client]
port    = 3306
socket  = /tmp/mysql.sock

[mysql]
no-auto-rehash

[mysqld]
user   = mysql
port   = 3306
socket = /tmp/mysql.sock
basedir  = /usr/local/mysql
datadir  = /usr/local/mysql/data
pid-file = /usr/local/mysql/data/mysql.pid
character_set_server = utf8
skip-name-resolve
long_query_time = 5
slow_query_log  = 1 
max_connections = 2000
max_connect_errors = 4000
explicit_defaults_for_timestamp = 1
tmp_table_size = 32M
max_heap_table_size = 32M
thread_cache_size = 100
default-storage-engine = INNODB
innodb_flush_log_at_trx_commit = 1
innodb_file_per_table = 1
innodb_buffer_pool_size = 2048M
innodb_log_file_size = 512M
key_buffer_size = 512M
log-bin=mysql-bin
binlog_format = mixed
server-id = 11
sync_binlog = 1
expire_logs_days = 15

[mysqldump]
quick
max_allowed_packet = 32M
操作步骤

1. shell脚本

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 使用脚本完成,mysql 编译、配置、安装步骤。

2. 执行脚本

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
bash  mysql-server.sh
# 耐心等待, 笔者2cpu/4GB虚拟机编译时间大约20分钟左右。

3. 启动服务

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
/etc/init.d/mysqld start

4. 安全设置

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
mysql_secure_installation
# 初始root密码为空,需要进行安全配置,按照提示完成配置向导。

5. 验证 mysql

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
mysql -u root -p 
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 18
Server version: 5.6.25-log Source distribution

Copyright (c) 2000, 2015, Oracle. All rights reserved.

# ...省略

mysql>
小结

最后来总结下文章中的知识点

  • 无论是源码方式,还是二级制方式,没有最好的方案,只有最适合的方案
  • 源码方式的优点,是安装参数可以定制化,按照需求编译程序,灵活性大。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-12-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 运维录 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
CentOS 7源码编译安装MySQL 8.0
[root@mysql etc]# cat /etc/RedHat-release CentOS Linux release 7.3.1611 (Core)
星哥玩云
2022/08/16
1.4K0
MySQL 8.0.19 Linux平台安装 Part 2
cat /data/mysql/data/mysql-error.log |grep password
bsbforever
2020/08/18
4560
Linux[CentOS]下编译安装Mysql5.7 步骤
以后可以使用那些一键的脚本,但是要明白一些底层的操作,以后才能更得心应手。一味的用那些面板、一键安装脚本,并不是一个很好的选择。
无道
2019/11/13
1.5K0
Linux[CentOS]下编译安装Mysql5.7 步骤
4步搞定MySQL安装部署(附MySQL一键式部署脚本)
学习数据库技术,实际动手的第一步是安装自己的MySQL。MySQL方面也提供多样式的安装方式rpm ,tar ,源码包。当安装完投入使用之后,随着业务量,数据量的增加,往往会碰到很多意向不到的问题。如性能,安全,配置不合理等。对于最佳实践,都应该注意哪些。
数据和云
2021/01/25
2.5K0
4步搞定MySQL安装部署(附MySQL一键式部署脚本)
MySQL入门02-MySQL二进制版本快速部署
在上篇文章 MySQL入门01-MySQL源码安装 中,我们介绍了MySQL源码安装的方法。 源码安装虽然有着更加灵活和更加优化等诸多优势。但源码编译安装部署的过程相对复杂,而且整个过程所花费的时间很长。 对于一整套系统和硬件完全一样的机器,其实完全可以只在一台机器源码安装,然后打包好编译出来的二进制版本,拷贝到其他机器解压,直接进行一些配置即可。
Alfred Zhao
2022/05/06
3820
mysql 安装5.7
##在CentOS7中编译安装MySQL 5.7.21. 依赖和源码包 安装相关的依赖:
匿名用户的日记
2021/12/14
7770
编译安装MySQL5.7
在MySQL官网下载你需要的二进制包版本。 官网下载链接:https://downloads.mysql.com/archives/community/ 本文是以mysql-5.7.28版本为例,所以也可以直接下载我这个版本。 链接:https://cdn.mysql.com/archives/mysql-5.7/mysql-boost-5.7.28.tar.gz
云计算小黑
2022/12/28
1.3K0
编译安装MySQL5.7
Linux CentOS6.5下编译安装MySQL 5.6.16【给力详细教程】
从http://dev.mysql.com/downloads/mysql/直接下载源码,解压mysql-5.6.16.tar.gz(http://www.quseqi.com/这个网站就是用的5.6.16版本)
李维亮
2021/07/09
6390
CentOS 7.2编译安装MariaDB-10.0.xx
------------------------------------------分割线------------------------------------------
星哥玩云
2022/08/13
5150
RPM方式安装GreatSQL 8.0.25-16
部署前提:准备一个干净的系统,确认先前没有安装过MySQL、Mariadb等相关服务,造成不必要的冲突。
GreatSQL社区
2022/05/18
5570
CentOS系统MySQL的配置文件my.cnf
这篇文章主要内容是前文《2015博客升级记(四):CentOS 7.1编译安装MySQL5.7.7rc》提到的MySQL的配置文件my.cnf。
typecodes
2024/03/29
3200
MySQL配置文件配置
虚拟机环境:VirtualBox 6.0.24 操作系统:Oracle Linux Server release 6.5 x86_64 MySQL版本:5.7.33
全栈程序员站长
2022/08/22
6.2K0
mysql系列之多实例3----基于my
    上一篇博文mysql系列之多实例2----基于多配置文件介绍了,如何部署基于多配置文件的mysql多实例,本篇博文将介绍基于mysql自带的mysqld_multi工具来如何实现mysql多实例的部署和管理!
py3study
2020/01/06
4400
MySQL之——源码编译MySQL8.x+升级gcc+升级cmake(亲测完整版)
最近,在CentOS 6.8服务器上编译安装MySQL 8.0.18的源码,百度了许久,发现网上的安装方式没一个可用的。基本都是基于CentOS 7.x来安装MySQL8.0,并且安装过程中会出现各种问题,按照他们的文章进行安装根本解决不了问题。更重要的一点就是,很多文章的内容一模一样!!我就纳闷了,那些发表文章的人,自己真的安装并且验证过吗?还是只是一味的抄袭呢?!
冰河
2020/10/29
2.4K0
MySQL之——源码编译MySQL8.x+升级gcc+升级cmake(亲测完整版)
CentOS 7.6 下MySQL 8.0.16编译安装
yum -y install ntpdate gcc gcc-c++ ncurses ncurses-devel cmake readline-devel zlib.x86_64 zlib-devel.x86_64 bison libcurl-* net-tool* tree nmap sysstat lrzsz dos2unix telnet.x86_64 nethogs iftop iotop unzip ftp.x86_
星哥玩云
2022/08/18
8470
mysql源码安装
源码安装 #安装依赖 yum install gcc gcc-c++ autoconf automake zlib zlib-devel openssl openssl-devel pcre* -y yum install -y cmake ncurses-devel #解压 tar xf mysql-5.6.26.tar.gz -C /usr/local/src/ ; cd /usr/local/src/mysql-5.6.26 #编译 cmake -DCMAKE_INSTALL_PREFIX=/u
零月
2018/04/25
1.4K0
mysql源码安装
Mysql配置文件 16c64g优化
一.说明 以下配置适合16核64G及以上的配置,会让性能稍微提高1/3左右。 二.配置 my.cnf [client] port = 3306 socket = /usr/local/mysql/mysql.sock [mysqld] #基础设置 port = 3306 bind-address = 0.0.0.0 lower_case_table_names=1 character-set-server=utf8mb4 default-storage-engine=innoDB basedir=/usr/
陈不成i
2021/06/11
1.3K0
Mysql配置文件 4c8g优化
测试语句 mysqlslap -uroot -p123456 --concurrency=100 --iterations=30 --auto-generate-sql --auto-generate-sql-load-type=mixed --auto-generate-sql-add-autoincrement --engine=innodb --number-of-queries=5000
陈不成i
2021/06/11
7000
MySQL入门01-MySQL源码安装
也可以官网 https://cmake.org/ 下载源码编译。 我这里选择了官网下载最新版本cmake-3.5.2.tar.gz。
Alfred Zhao
2022/05/06
7450
基于Centos6.5源码编译安装mysql-5.7.17
基于Centos6.5源码编译安装mysql-5.7.17过程详解 由于工作需要,需要在centos6.5服务器上安装mysql5.7,如下是详细安装过程。
冬天里的懒猫
2020/08/04
8730
相关推荐
CentOS 7源码编译安装MySQL 8.0
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验