前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >​ mysql编译安装脚本

​ mysql编译安装脚本

作者头像
用户1560186
发布2020-01-02 16:19:54
1.8K0
发布2020-01-02 16:19:54
举报
文章被收录于专栏:运维录运维录

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

开始之前

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

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

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

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

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

1. 目录结构

代码语言:javascript
复制
tree ./
./
├── conf
│   └── my.cnf
├── mysql-5.6.25.tar.gz
└── mysql-server.sh

1 directory, 3 files

2. mysql 配置文件

代码语言:javascript
复制
# 示例 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
复制
# 使用脚本完成,mysql 编译、配置、安装步骤。

2. 执行脚本

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

3. 启动服务

代码语言:javascript
复制
/etc/init.d/mysqld start

4. 安全设置

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

5. 验证 mysql

代码语言:javascript
复制
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 删除。

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 开始之前
  • 环境描述
  • 操作步骤
  • 小结
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档