#!/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. mysql保留两位小数

    --这个是保留整数位 SELECT CONVERT(4545.1366,DECIMAL); --这个是保留两位小数 ,)); --这个是截取两位,并不会四舍五入保留两位小数 );

  2. 关于gcc编译器中函数不用进行原型声明的解释

    经过大量实验和参考网上的说法得出一个结论: gcc编译器中,函数可以不用提前进行原型声明,编译器会把函数调用同时认为是声明.需要注意的是,由于函数调用的时候并没有写明函数返回值,这是gcc把调用当成声 ...

  3. 笔记四:python乱码深度剖析二

    一:学习内容 获取更改系统编码 判断字符的编码类型 文件存储和读取的编码 二:获取更改系统编码 1. 获取系统编码 import sys print sys.getdefaultencoding() ...

  4. springMVC中ModelAndView学写笔记

    api介绍: 构造函数摘要 ModelAndView()           bean样式用法的默认构造函数:填充bean属性,而不是传递构造函数参数. ModelAndView(Object vie ...

  5. Struts2配置文件struts.xml的编辑自动提示代码功能

    第一步:复制struts.xml头部地址 第二步:Window --->Preferences 第三步:XML--->XML Catalog--->Add 第四步:在Key中粘贴复制 ...

  6. 【持续更新】一个简洁、易用的美赛LaTeX模板: easyMCM

    目录 1 当前美赛模板通行情况的概述 2 easymcm宏包说明 2.1 与mcmthesis的关系之说明 2.2 easymcm宏包的简介 2.3 美赛模板下载地址 3 常见问题的解决方案 若您无意 ...

  7. 关于Sqlite的一个demo

      直接上代码: class DBHelperSqlite { ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetC ...

  8. python单链表

    #!/usr/bin/env python3 # -*- coding:utf-8 -*- class LNode: """ 结点类 """ ...

  9. [日常] 搭建golang开发环境

    下载目录:https://studygolang.com/dl32位选 go1.10.linux-386.tar.gz64位选 go1.10.linux-amd64.tar.gz uname -a查看 ...

  10. win8.1 pro-64位下安装配置MinGW—64位

    1.下载MinGW-w64位:http://mingw-w64.org/doku.php 点击Downloads 说明:这边使用的是在线安装方式: 在网站里可以看到他安装后的文件夹: 2.安装 运行m ...