MySQL脚本自动安装mysql-5.6.15-linux-glibc2.5-x86_64.tar.gz
脚本安装mysql-5.6.15-linux-glibc2.5-x86_64.tar.gz
先准备好数据文件的路径
softdir='/data/soft'
把脚本和tar包放在相应的路径下,其实就是源码安装的一个shell封装,记得修改innodb的一些参数
#!/bin/bash
clear
echo "========================================================================="
echo ""
echo "Mysql for Centos6.x Install scripts "
echo "Default Install PATH:/usr/local/mysql"
echo "Default mysql default password:mysql"
echo "========================================================================="
echo ""
echo "" read -p "If the OK! Press any key to start..."
basedir='/usr/local/mysql'
datadir='/data/mysqldata/3306'
softdir='/data/soft'
user='mysql'
group='mysql'
logs=/tmp/install`date +%F`.log
port=3306
curDate=`date +'%Y%m%d'`
myFile=mysql-5.6.15-linux-glibc2.5-x86_64.tar.gz echo "`date +%F` beginning !" >>$logs
#create mysql datadir
if [ ! -d $datadir ];then
mkdir -p /data/mysqldata/{3306/{data,tmp,binlog,slave,log/iblog},backup,scripts}
echo -e "create datadir the mysql" >>$logs
fi #create mysql basedir
#if [ ! -d $basedir ];then
# mkdir -p /usr/local/mysql
# echo -e "create basedir the mysql" >>$logs
#fi #create mysqlsoft basedir
if [ ! -d $softdir ];then
mkdir -p /data/soft
echo -e "create basedir the mysql" >>$logs
fi base() {
echo "EVN Initialization..."
yum install -y gcc gcc-* make cmake gcc-c++ libaio libaio-devel bison bison-devel autoconf automake zlib* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel* --skip-broken
sleep 3
yum install -y openssl openssl-devel ncurses ncurses-devel --skip-broken
sleep 3
yum install -y 'perl(Data::Dumper)'
groupadd mysql
useradd -g mysql mysql
} download() {
echo "Download soft..."
cd $softdir
if [ ! -f "$myFile" ]; then
# wget http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-5.6.15-linux-glibc2.5-x86_64.tar.gz
#echo -e "download soft the mysql" >>$logs
echo -e "cannt find mysql file,pls download" >>$logs
exit 1
fi
} install(){
cd $softdir
tar -zxvf mysql-5.6.15-linux-glibc2.5-x86_64.tar.gz -C /usr/local/
cd /usr/local/
ln -s mysql-5.6.15-linux-glibc2.5-x86_64 mysql
echo -e "use mysql blibc to install" >>$logs touch /data/mysqldata/3306/my.cnf
export MYSQL_PORT=${port}
## generate server id
server_id=`date +'%y%m%d%H%M'`
export MYSQL_SERVER_ID=${server_id} cat >> /data/mysqldata/3306/my.cnf << EOF
[client]
port=3306
socket=/data/mysqldata/3306/mysql.sock [mysql]
prompt = [\\u@\\p][\\d]>\\_
no-auto-rehash
pid_file=/data/mysqldata/3306/mysqld.pid [mysqldump]
single-transaction [mysqld]
autocommit=1
general_log=off
explicit_defaults_for_timestamp=true
#character set
character-set-server = utf8
event_scheduler = 1 # system
basedir=/usr/local/mysql
datadir=/data/mysqldata/3306/data
max_allowed_packet=32M
max_connections=300
max_user_connections=280
max_connect_errors = 1000000
open_files_limit=65535
query_cache_type=0
query_cache_size=0 #timeout
lock_wait_timeout=120
interactive_timeout = 300
wait_timeout = 300 port=3306
server_id=${MYSQL_SERVER_ID} skip_name_resolve=ON
socket=/data/mysqldata/3306/mysql.sock
tmpdir=/data/mysqldata/3306/tmp #binlog
log_bin=/data/mysqldata/3306/binlog/mysql-bin
binlog_cache_size=32K
binlog_format=row
#expire_logs_days=90
log_slave_updates=ON
max_binlog_cache_size=1G
max_binlog_size=500M
sync_binlog=1
#transaction-isolation=READ-COMMITTED #logging
log_error=/data/mysqldata/3306/log/mysql-error.log
slow_query_log_file=/data/mysqldata/3306/log/mysql-slow.log
log_queries_not_using_indexes=0
slow_query_log=1
log_slave_updates=ON
log_slow_admin_statements=1
long_query_time=2
log-bin-trust-function-creators = 1 #gitd
#gtid_mode = on
#enforce_gtid_consistency = 1 #relay
relay_log=/data/mysqldata/3306/slave/relaylog
relay_log_index=/data/mysqldata/3306/slave/mysqld-relay-bin.index
relay_log_info_file=/data/mysqldata/3306/slave/relay-log.info
relay_log_recovery = 1 #slave
slave_load_tmpdir=/data/mysqldata/3306/tmp
slave_skip_errors=1032,1062
skip-slave-start #innodb
innodb_data_home_dir=/data/mysqldata/3306/log/iblog
innodb_log_group_home_dir=/data/mysqldata/3306/log/iblog
innodb_adaptive_flushing=ON
innodb_adaptive_hash_index=ON
innodb_autoinc_lock_mode=2
innodb_buffer_pool_instances=2 #default
innodb_change_buffering=inserts
innodb_checksums=ON
innodb_buffer_pool_size= 1024M
innodb_data_file_path=ibdata1:1G:autoextend
innodb_doublewrite=ON
innodb_file_format=Barracuda
innodb_file_per_table=ON
innodb_flush_log_at_trx_commit=1
innodb_flush_method=O_DIRECT
innodb_io_capacity=1000
innodb_lock_wait_timeout=10
innodb_log_buffer_size=200M
innodb_log_file_size=1G
innodb_log_files_in_group=4
innodb_max_dirty_pages_pct=60
innodb_open_files=60000
innodb_purge_threads=4
innodb_stats_on_metadata=OFF
innodb_support_xa=ON
innodb_use_native_aio=OFF
innodb_write_io_threads = 8
innodb_read_io_threads = 8 [mysqld_safe]
datadir=/data/mysqldata/3306/data EOF
chown -R mysql:mysql /usr/local/mysql/
chown -R mysql:mysql /data/mysqldata/
#su - mysql
sudo -u mysql /usr/local/mysql/scripts/mysql_install_db --defaults-file=/data/mysqldata/3306/my.cnf --datadir=/data/mysqldata/3306/data --basedir=/usr/local/mysql --user=mysql
sleep 3
sudo -u mysql /usr/local/mysql/bin/mysqld_safe --defaults-file=/data/mysqldata/3306/my.cnf &
echo 'export PATH="/usr/local/mysql/bin:$PATH"' >>/home/mysql/.bash_profile
echo 'export LANG=en_US.UTF-8' >>/home/mysql/.bash_profile
echo 'export MYSQL_PS1="(\u@\h:\p) [\d]> "' >>/home/mysql/.bash_profile
source /home/mysql/.bash_profile
} end() {
clear
echo "" echo ""
} ##设置显示脚本运行时间##
function start_time()
{
start_time="$(date +%s)"
echo "$(date) 开始安装!!"
echo "$start_time" > /tmp/install_lnmp_runtime
}
function end_time()
{
end_time="$(date +%s)"
total_s=$(($end_time - $start_time))
total_m=$(($total_s/60))
if [ $total_s -lt 60 ]; then
time_en="${total_s} 秒"
else
time_en="${total_m} 分"
fi
echo "$(date) 完成安装"
echo "运行install_lnmp.sh 所花的时间:${time_en}">/tmp/install_lnmp_runtime
echo "总共运行时间: ${time_en}"
} main() {
start_time
echo "Installtion MYSQL..."
base
download
install
end
end_time
} main
MySQL脚本自动安装mysql-5.6.15-linux-glibc2.5-x86_64.tar.gz的更多相关文章
- 可以自动安装mysql数据库的一个shell脚本
发布:thatboy 来源:脚本学堂 [大 中 小] 分享一例shell脚本,可以实现mysql数据库的自动安装,脚本写的不错,无论是用来学习,还是生产环境中应用,都是不错的,有需要的朋友 ...
- Centos 6.4上面用Shell脚本一键安装mysql 5.6.15
Centos 6.4上面用Shell脚本一键安装mysql 5.6.15 #!/bin/bash if [ `uname -m` == "x86_64" ];then machi ...
- .net安装包自动安装Mysql数据库
原文:.net安装包自动安装Mysql数据库 在制作.Net安装包的时候,如果项目有用到数据库,怎么能够把数据库打包安装呢?网上已经有很多自动安装Sql Server数据库的例子,但是自动安装mysq ...
- MySQL初体验--安装MySQL
操作系统版本:redhat 6.7 64位 [root@mysql ~]# cat /etc/redhat-release Red Hat Enterprise Linux Server releas ...
- Ubuntu/CentOS下使用脚本自动安装 Docker
Ubuntu.Debian 系列安装 Docker 系统要求 Docker 支持以下版本的 Ubuntu 和 Debian 操作系统: Ubuntu Xenial 16.04 (LTS) Ubuntu ...
- MySQL介绍及安装&MySQL软件基本管理
mysql介绍 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下公司.MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好 ...
- docker安装 之 ---CentOS 7 系统脚本自动安装
[使用脚本自动安装] 在测试或开发环境中Docker官方为了简化安装流程,提供了一套便捷的安装脚本,CentOS系统上可以使用这套脚本安装: $ curl -fsSL get.docker.com - ...
- nginx脚本自动安装
nginx脚本自动安装 脚本功能: 自动安装nginx 自动判别系统是否安装nginx 自定义安装nginx路径 自定义安装nginx版本. #!/bin/bash #2019年10月30日16:00 ...
- yum自动安装mysql
1.安装客户端和服务器端查看CentOS自带mysql: yum list installed | grep mysql卸载CentOS系统自带mysql数据库? yum -y remove mysq ...
随机推荐
- 使用kibana进行简单的CRUD和版本控制
使用: ##创建文档之前先创建索引 PUT /toov5 ##查询索引 GET /toov5 ##创建文档 /索引/类型/id PUT /toov5/user/1 { "name" ...
- linux基础(1)-yum源配置
用linux将近一年了,开始学的东西因为没经常用都忘记了,现在将笔记的东西慢慢整理成自己的博客,也算是看着自己进步.有些东西从他人博客笔记学的,有些是从视频学的,有些是自己填坑积累的. 在linux下 ...
- R语言笔记005——计算描述性统计量
数据的分布特征: 分布的集中趋势,反应各数据向其中心值靠拢或聚集的程度(平均数,中位数,四分位数,众数) 分布的离散程度,反应各数据远离其中心值的趋势(极差,四分位差,方差,标准差,离散系数) 分布的 ...
- Kafka详解六:Kafka如何通过源码实现监控
问题导读: 1.kafka的消费者组的消费偏移存储,kafka支持两个版本? 2.ConsumerOffsetChecker类的作用是什么? 3.Kafka如何通过源码实现 ...
- POJ 2482 Stars in Your Window (线段树区间合并+扫描线)
这题开始一直被矩形框束缚了,想法一直都是枚举线,但是这样枚举都需要O(n^2)...但是看了别人的思路,感觉这题思想真心很好(PS:开头好浪漫的描述啊,可惜并没有什么用) 题意就是在平面上给你一些星 ...
- 防止xss,sql攻击函数
<?php //php防注入和XSS攻击通用过滤. //by qq:831937 $_GET && SafeFilter($_GET); $_POST && Sa ...
- vue cli关闭eslint严格语法检查
eslint是一个JavaScript的校验插件,通常用来校验语法或代码的书写风格. 官方文档:https://eslint.org 这篇文章总结了eslint的规则:Eslint规则说明 1.关闭e ...
- KVM- 存储池配置
1.创建基于文件夹的存储池(目录) [root@kvm_1 ~]# mkdir -p /data/vmfs 2.定义存储池与其目录 [root@kvm_1 ~]# virsh pool-define- ...
- A*B problem(FFT)
#include<iostream> #include<cstdio> #include<cstring> #include<cmath> #inclu ...
- 剑指offer--21.链表中倒数第k个结点
定义两个指针,当一个指针指到第K个结点时,第二个指针开始向后移动 -------------- 时间限制:1秒 空间限制:32768K 热度指数:602826 本题知识点: 链表 题目描述 输入一个链 ...