#!/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. SpringCloud源码解读

    http://blog.didispace.com/Spring-Cloud%E5%9F%BA%E7%A1%80%E6%95%99%E7%A8%8B/

  2. Java指定保留小数位数的方法

    package com.qiyuan.util; import java.math.BigDecimal; import java.math.RoundingMode; import java.tex ...

  3. H5开发过程中修复的bug记录

    从2016年8月1日开始真正意义上的修复bug,也是自己开发之路的开端,希望在这里记录自己修bug过程中遇到的问题及解决方法,待能够自己开发需求的时候,计划记录开发新需求过程中遇到的问题,并且记录自己 ...

  4. Kaggle(一):房价预测

    Kaggle(一) 房价预测 (随机森林.岭回归.集成学习)  项目介绍:通过79个解释变量描述爱荷华州艾姆斯的住宅的各个方面,然后通过这些变量训练模型, 来预测房价.   kaggle项目链接:ht ...

  5. JavaScript学习总结(三)——闭包、IIFE、原型、函数与对象

    一.闭包(Closure) 1.1.闭包相关的问题 请在页面中放10个div,每个div中放入字母a-j,当点击每一个div时显示索引号,如第1个div显示0,第10个显示9:方法:找到所有的div, ...

  6. elasticsearch-head的使用

    ealsticsearch只是后端提供各种api,那么怎么直观的使用它呢?elasticsearch-head将是一款专门针对于elasticsearch的客户端工具 elasticsearch-he ...

  7. babel使用入门以及使用webpack+babel来"编译"你的JS代码

    Babel是一个广泛使用的转码器,可以将ES6代码转为ES5,从而在现有的环境中执行. 这是一个开端,以后遇到问题,也会持续记录. 一.babel配置 官网有更详细的配置教程:https://www. ...

  8. C# 小软件部分(二)

     此次又新增了一些新的功能,直接接着上次的介绍吧 上次博客介绍地址:http://www.cnblogs.com/Liyuting/p/8540592.html 这次新增了三个功能,具体如下: 一.网 ...

  9. [javaSE] 集合框架(共性方法)

    Collection接口的常用方法 add(),添加一个元素 addAll(),添加一组元素 clear(),清空 remove(),移除一个 removeAll(),移除一组 size(),元素个数 ...

  10. Linux root用户不能通过SSH连接的问题

    http://jingyan.baidu.com/article/fd8044fad48fc95031137a85.html 最近在虚拟机安装Ubuntu之后,通过普通ssh远程连接的时候明明输入了正 ...