#!/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. 数据序列化导读(2)[YAML]

    上一节讲了JSON, 这一节将介绍YAML.可以认为,YAML是JSON的超集,但是更加简单易用,适合人类阅读和书写. 1.  什么是YAML? YAML是YAML Ain't Markup Lang ...

  2. PTA (Advanced Level) 1024 Palindromic Number

    Palindromic Number A number that will be the same when it is written forwards or backwards is known ...

  3. Spark程序本地运行

    Spark程序本地运行   本次安装是在JDK安装完成的基础上进行的!  SPARK版本和hadoop版本必须对应!!! spark是基于hadoop运算的,两者有依赖关系,见下图: 前言: 1.环境 ...

  4. Firebird 备份与恢复

    备份test gbak -b test d:\test.bak -user sysdba 恢复为test1 gbak -c d:\test.bak test1

  5. Visual Basic了解

    Visual Basic是一种由微软公司开发的结构化的.模块化的.面向对象的.包含协助开发环境的事件驱动为机制的可视化程序设计语言.这是一种可用于微软自家产品开发的语言.它源自于Basic编程语言.V ...

  6. 使用phpQuery轻松采集网页内容

    phpQuery是一个基于PHP的服务端开源项目,它可以让PHP开发人员轻松处理DOM文档内容,比如获取某新闻网站的头条信息.更有意思的是,它采用了jQuery的思想,你可以像使用jQuery一样处理 ...

  7. 【模板 && 拓扑】 Dijkstra 单源最短路径算法

    话不多说上代码 链式前向星233 #include<bits/stdc++.h> using namespace std; ,_max=0x3fffffff; //链式前向星 struct ...

  8. Ubuntu16.04 LTS上安装Go1.10

    原因 Ubuntu资源库上默认使用的是Go1.6.2版本,给最新版本代码编译带来了不少问题.本文就记录下在Ubuntu下直接安装Go最新版1.10的步骤. 准备工作 1.卸载已有版本 # 卸载已经安装 ...

  9. 第一节:Java初识与计算机基础

    一.计算机 = 硬件 + 软件 1.硬件:计算机中看的见摸得着的物理元件,例如:CPU(中央处理器).内存条.硬盘... CPU:计算机的运算和控制核心,主要用于对数据的逻辑运算以及对计算机指令的解析 ...

  10. SQL事务在存储过程的应用

    -- ============================================= -- Author: jf_ou -- Create date: 2017-08-22 -- Desc ...