#!/bin/bash#date:2019/1/20#by author zhangjia#install mysql#shell_name:mysql_auto_install.sh############################################set -echeck_ok() {    if [[ $? -ne 0  ]]    then        exit 111111    fi}yum  install -y vim gcc wget  cmake  ncurses-devel ncurses  gcc-c++ if !  id mysql ;then#if ! grep '^mysql:' /etc/passwd ; then    useradd -M -s /sbin/nologin mysqlfimysql_ver=mysql-5.5.60base_dir=/usr/local/mysqldata_dir=/data/mysqlcd /usr/src[[ -d ${data_dir}  ]] && /bin/mv ${data_dir} ${data_dir}_`date +%s`mkdir -p ${data_dir}chown -R mysql:mysql ${data_dir}[[ -e /usr/src/${mysql_ver}.tar.gz ]] || wget -c http://mirrors.sohu.com/mysql/MySQL-5.5/${mysql_ver}.tar.gz[[ -d ${base_dir}/${mysql_ver} ]] && rm -rf ${base_dir}/${mysql_ver}tar -xzf ${mysql_ver}.tar.gzcd ${mysql_ver}cmake  .  -DCMAKE_INSTALL_PREFIX=${base_dir} \-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \-DMYSQL_DATADIR=${data_dir} \-DSYSCONFDIR=/etc -DMYSQL_USER=mysql \-DMYSQL_TCP_PORT=3306 \-DWITH_XTRADB_STORAGE_ENGINE=1 \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_PARTITION_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_MYISAM_STORAGE_ENGINE=1 \-DWITH_READLINE=1 \-DENABLED_LOCAL_INFILE=1 \-DWITH_EXTRA_CHARSETS=1 \-DDEFAULT_CHARSET=utf8 \-DDEFAULT_COLLATION=utf8_general_ci \-DEXTRA_CHARSETS=all \-DWITH_BIG_TABLES=1 \-DWITH_DEBUG=0

check_okmake -j4check_okmake -j4 installcheck_okcd ${base_dir}\cp support-files/my-large.cnf /etc/my.cnf\cp support-files/mysql.server /etc/init.d/mysqldchkconfig --add mysqldchkconfig --level 345 mysqld on${base_dir}/scripts/mysql_install_db --user=mysql --datadir=${data_dir} --basedir=${base_dir}echo "export PATH=${base_dir}/bin:\$PATH" >> /etc/profilecheck_okservice mysqld restartsource /etc/profilemysqladmin -u root password 123456netstat -natp|grep mysqldps aux|grep mysql

mysql编译参数解释:

cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql55      Cmake预编译;
-DMYSQL_UNIX_ADDR=/tmp/mysql.sock                 MYSQL Socket通信文件位置;
-DMYSQL_DATADIR=/data/mysql                         MYSQL数据存放路径;
-DSYSCONFDIR=/etc                                     配置文件路径;
-DMYSQL_USER=mysql                                 MYSQL运行用户;
-DMYSQL_TCP_PORT=                             MYSQL监听端口;
-DWITH_XTRADB_STORAGE_ENGINE=                 开启xtradb引擎支持;
-DWITH_INNOBASE_STORAGE_ENGINE=              开启innodb引擎支持;
-DWITH_PARTITION_STORAGE_ENGINE=             开启partition引擎支持;
-DWITH_BLACKHOLE_STORAGE_ENGINE=             开启blackhole引擎支持;
-DWITH_MYISAM_STORAGE_ENGINE=                 开启MyISAM引擎支持;
-DWITH_READLINE=                                 启用快捷键功能;
-DENABLED_LOCAL_INFILE=                         允许从本地导入数据;
-DWITH_EXTRA_CHARSETS=                         支持额外的字符集;
-DDEFAULT_CHARSET=utf8                             默认字符集UTF-;
-DDEFAULT_COLLATION=utf8_general_ci                 检验字符;
-DEXTRA_CHARSETS=all                             安装所有扩展字符集;
-DWITH_BIG_TABLES=                                 将临时表存储在磁盘上;
-DWITH_DEBUG=                                    禁止调试模式支持;
make                                                编译;
make install                                            安装。

十一、配置文件

[mysqld]                               //服务器端配置
datadir=/data/mysql                       //数据目录
socket=/var/lib/mysql/mysql.sock         //socket通信设置
user=mysql                             //使用mysql用户启动;
symbolic-links=                      //是否支持快捷方式;
log-bin=mysql-bin                      //开启bin-log日志;
server-id =                           //mysql服务的ID;
auto_increment_offset=                //自增长字段从固定数开始;
auto_increment_increment=                //自增长字段每次递增的量;
socket = /tmp/mysql.sock                 //为MySQL客户程序与服务器之间的本地通信套接字文件;
port             =                   //指定MsSQL监听的端口;
key_buffer       = 384M              //key_buffer是用于索引块的缓冲区大小;
table_cache      =                    //为所有线程打开表的数量;
sort_buffer_size = 2M                    //每个需要进行排序的线程分配该大小的一个缓冲区;
read_buffer_size = 2M                    //读查询操作所能使用的缓冲区大小。
query_cache_size = 32M                   //指定MySQL查询结果缓冲区的大小
read_rnd_buffer_size    = 8M             //改参数在使用行指针排序之后,随机读;
myisam_sort_buffer_size = 64M            //MyISAM表发生变化时重新排序所需的缓冲;
thread_concurrency      =               //最大并发线程数,取值为服务器逻辑CPU数量×2;
thread_cache            =               //缓存可重用的线程数;
skip-locking                            //避免MySQL的外部锁定,减少出错几率增强稳定性。
default-storage-engine=INNODB         //设置mysql默认引擎为Innodb;
#mysqld_safe config
[mysqld_safe]                          //mysql服务安全启动配置;
log-error=/var/log/mysqld.log              //mysql错误日志路径;
pid-file=/var/run/mysqld/mysqld.pid         //mysql PID进程文件;
key_buffer_size = 2048MB                //MyISAM表索引缓冲区的大小;
max_connections =                 //mysql最大连接数;
innodb_buffer_pool_size    = 2048MB    //InnoDB内存缓冲数据和索引大小;
basedir      = /usr/local/mysql55/          //数据库安装路径;
[mysqldump]                            //数据库导出段配置;
max_allowed_packet      =16M         //服务器和客户端发送的最大数据包;

十二、吴广科的配置案例

[mysqld]                           //服务器端配置

datadir=/data/mysql                    //数据目录

socket=/var/lib/mysql/mysql.sock       //socket通信设置 

user=mysql                         //使用mysql用户启动;

symbolic-links=                   //是否支持快捷方式;

log-bin=mysql-bin                  //开启bin-log日志;

server-id =                       //mysql服务的ID;

auto_increment_offset=            //自增长字段从固定数开始;

auto_increment_increment=             //自增长字段每次递增的量;

socket = /tmp/mysql.sock               //为MySQL客户程序与服务器之间的本地通信套接字文件;

port             =                 //指定MsSQL监听的端口;

key_buffer       = 384M            //key_buffer是用于索引块的缓冲区大小;

table_cache      =                  //为所有线程打开表的数量;

sort_buffer_size = 2M                  //每个需要进行排序的线程分配该大小的一个缓冲区;

read_buffer_size = 2M                  //读查询操作所能使用的缓冲区大小。

query_cache_size = 32M                 //指定MySQL查询结果缓冲区的大小

read_rnd_buffer_size    = 8M           //改参数在使用行指针排序之后,随机读;

myisam_sort_buffer_size = 64M          //MyISAM表发生变化时重新排序所需的缓冲;

thread_concurrency      =             //最大并发线程数,取值为服务器逻辑CPU数量×2;

thread_cache            =             //缓存可重用的线程数;

skip-locking                       //避免MySQL的外部锁定,减少出错几率增强稳定性。

default-storage-engine=INNODB         //设置mysql默认引擎为Innodb;

#mysqld_safe config        

[mysqld_safe]                      //mysql服务安全启动配置;

log-error=/var/log/mysqld.log          //mysql错误日志路径;

pid-file=/var/run/mysqld/mysqld.pid        //mysql PID进程文件;

key_buffer_size = 2048MB           //MyISAM表索引缓冲区的大小;

max_connections =              //mysql最大连接数;

innodb_buffer_pool_size  = 2048MB   //InnoDB内存缓冲数据和索引大小;

basedir      = /usr/local/mysql55/         //数据库安装路径;

[mysqldump]                          //数据库导出段配置;

max_allowed_packet      =16M       //服务器和客户端发送的最大数据包;

Normal
0

7.8 磅
0
2

false
false
false

EN-US
ZH-CN
X-NONE

/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Calibri","sans-serif";
mso-ascii-font-family:Calibri;
mso-ascii-theme-font:minor-latin;
mso-hansi-font-family:Calibri;
mso-hansi-theme-font:minor-latin;
mso-bidi-font-family:"Times New Roman";
mso-bidi-theme-font:minor-bidi;}

Mysql源码安装shell脚本的更多相关文章

  1. MySQL源码安装一键脚本

    #红色部分根据自己的需求来定义#!/bin/bash #卸载系统自带的Mysql /bin/rpm -e $(/bin/rpm -qa | grep mysql|xargs) --nodeps /bi ...

  2. maridb\mysql 源码安装,以10.1.26版本为例

    mysql 源码安装(mariadb 10.1.26) 1.环境部署 1 安装cmake 源码安装三部曲或者yum install cmake2安装依赖包yum install -y ncurses- ...

  3. mysql源码安装(5.1)

    下载mysql源码包并解压.wget http://dev.mysql.com/get/Downloads/MySQL-5.1/mysql-5.1.73.tar.gztar -zxvf mysql-5 ...

  4. CentOS 7运维管理笔记(10)----MySQL源码安装

    MySQL可以支持多种平台,如Windows,UNIX,FreeBSD或其他Linux系统.本篇随笔记录在CentOS 7 上使用源码安装MySQL的过程. 1.下载源码 选择使用北理工的镜像文件: ...

  5. Linux MySQL源码安装缺少ncurses-devel包

    在Red Hat Enterprise Linux Server release 5.7 上用源码安装MySQL-5.6.23时,遇到了" remove CMakeCache.txt and ...

  6. Linux(CentOS或RadHat)下MySQL源码安装

    安装环境: CentOS6.3 64位 软件: Mysql-5.6 所需包: gcc/g++ :MySQL 5.6开始,需要使用g++进行编译.cmake  :MySQL 5.5开始,使用cmake进 ...

  7. mysql源码安装(包括5.5和5.7)

    1.mysql5.5源码安装 yum install -y cmake ncurses-devel ncurses cd /usr/src wget -c https://cdn.mysql.com/ ...

  8. MySQL源码安装(centos)

    1.去MySQL官网下载源码包 地址:http://dev.mysql.com/downloads/mysql/ 下载完后需要检查文件的MD5,以确认是否从官网下载的原版本(以防被人篡改过该软件) 使 ...

  9. zabbix,php,nginx,mysql源码安装 神仙操作

    →软件包 mkdir /soft/ cd /soft ♦下载以下软件包 nginx-1.14.2.tar.gz wget http://nginx.org/download/nginx-1.14.2. ...

随机推荐

  1. JavaScript里的循环方法总结

    JavaScript诞生已经有20多年了,我们一直使用的用来循环一个数组的方法是这样的: for (var index = 0; index < myArray.length; index++) ...

  2. 开始使用Newbe.Pct-Web自动化测试

    前篇介绍了,使用 Newbe.Pct 之前的准备工作.本篇将开始介绍如何使用本项目运行第一个测试用例. 阅前语 从本篇开始,读者将会接触到使用一些代码.希望读者不必纠结于语法本身.出现代码的地方都会伴 ...

  3. Extjs报错处理

    错误信息: IE:SCRIPT1009: 缺少 '}' FF: SyntaxError: identifier starts immediately after numeric literal ... ...

  4. MVC部分视图

    // 以视图名使用当前文件夹下的视图 // 如果没有找到,则搜索 Shared 文件夹 @Html.Partial("ViewName")   @Html.Partial(“视图” ...

  5. EF6 CodeFirst代码迁移笔记

        由于EF7只支持codefirst only.朕无奈被微软逼上了梁山学一下codefirst,就算是为明年做准备吧.写的这些网上大致都有,基本没啥 新内容, 迁移 使用自动迁移 Enable- ...

  6. data whitening

    http://ufldl.stanford.edu/tutorial/unsupervised/PCAWhitening/

  7. CSS页面重构“鑫三无准则”之“无图片”准则——张鑫旭

    一.再说关于“鑫三无准则” “鑫三无准则”这个概念貌似最早是在去年的去年一篇名叫“关于Google圆角高光高宽自适应按钮及其拓展”的文章中提过.这是自己在页面重构的经验中总结出来的一套约束自己CSS的 ...

  8. 个人遗漏知识的回顾-HTML

    常用的一些快捷键: Windows + e 我的电脑Ctrl + Tab 网页间不同页面切换F2 重命名Ctrl+Shift+S 另存为 前端的一些常识:前端意义:将效果图生成网页网页组成:文字.图片 ...

  9. c#无边窗体实现移动的两种方式

    转载:http://blog.csdn.net/dxsh126/article/details/2940226 首先,要用到一个WimdowsAPI函数,因此必须引入 using System.Run ...

  10. js-权威指南学习笔记3

    第四章 表达式和运算符 1.最简单的表达式是原始表达式,是表达式的最小单位——它们不再包含其他表达式.JS中原始表达式包含常量或直接量.关键字和变量. 2.一个对象的属性名不是固定值时,必须使用方括号 ...