mysql自动安装脚本
为适应自己工作习惯和需要,花一点时间写了一个mysql自动安装脚本,供大家参考学习。
注意:
1、需要先安装cmake
2、数据库版本需要在第二步安装mysql时修改
3、该脚本是以root用户安装并启动
脚本内容如下:
########################################################################
#mysql自动安装脚本,其中变量/mysql_v_dir/和/port/可根据实际需要修改 #
#执行脚本命令:sh mysql_install.sh >mysql_install.log #
########################################################################
####0.定义mysql目录####
mk_mysqldir=/tmp/setup ##mysql安装包所在目录
mysql_v_dir=mysql_5611 ##mysql version directry
mysql_dir=/home/mysql/$mysql_v_dir ##the path where mysql install
port=5611 ##端口号
####1.创建mysql用户和组####
#user=`cat /etc/passwd |grep mysql`
#if [ -z $user ]
#then
#groupadd mysql
#useradd mysql -d /home/mysql -g mysql
#else
#userdel mysql
#groupdel mysql
#groupadd mysql
#useradd mysql -d /home/mysql -g mysql
#fi
cd /home/mysql
mkdir $mysql_v_dir
cd $mysql_dir
mkdir data log tmp etc
#chown mysql:mysql data log tmp etc
####2.安装mysql####
cd $mk_mysqldir
tar -xzf mysql-5.6.16.tar.gz
cd mysql-5.6.16
##cmake install##
cmake \
-DCMAKE_INSTALL_PREFIX=${mysql_dir} \
-DINSTALL_MYSQLDATADIR=${mysql_dir}/data \
-DMYSQL_DATADIR=${mysql_dir}/data \
-DSYSCONFDIR=${mysql_dir}/etc \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DMYSQL_TCP_PORT=5535 \
-DMYSQL_UNIX_ADDR=${mysql_dir}/tmp/mysql.sock \
-DWITH_EXTRA_CHARSETS=all
make ; make install
####3.创建并修改配置文件#####
cat <<EOF >$mysql_dir/etc/my.cnf
[client]
port = $port
socket = $mysql_dir/tmp/mysql.sock
[mysqld]
port = $port
basedir = $mysql_dir/
socket = $mysql_dir/tmp/mysql.sock
pid-file = $mysql_dir/data/mysql.pid
datadir = $mysql_dir/data/
tmpdir = $mysql_dir/tmp/
slave-load-tmpdir = $mysql_dir/tmp/
# skip lever
skip-name-resolve
skip-symbolic-links
skip-external-locking
skip-slave-start
#thread level
table_open_cache = 2048
#############connect############
back_log = 50
max_connections = 1000
max_connect_errors = 10000
#open_files_limit = 10240
##############timeout###########
connect-timeout = 10
wait-timeout = 800
interactive-timeout = 800
slave-net-timeout = 60
net_read_timeout = 30
net_write_timeout = 60
net_retry_count = 10
net_buffer_length = 16384
max_allowed_packet = 64M
################# cache #############
table_open_cache = 2048
thread_stack = 192K
thread_cache_size = 100
thread_concurrency = 16
# qcache settings
query_cache_size = 20m
query_cache_limit = 2M
query_cache_min_res_unit = 2K
# default settings
# time zone
default-time-zone = system
character-set-server = utf8
default-storage-engine = InnoDB
# tmp & heap
tmp_table_size = 512M
max_heap_table_size = 512M
log-bin = mysql-bin
log-bin-index = mysql-bin.index
relay-log = relay-log
relay_log_index = relay-log.index
# warning & error log
log-warnings = 1
log-error = $mysql_dir/log/mysql.err
log-output = FILE
# slow query log
slow_query_log = 1
long-query-time = 1
slow_query_log_file = $mysql_dir/log/slow.log
#log-queries-not-using-indexes
#log-slow-slave-statements
general_log = 1
general_log_file = $mysql_dir/log/mysql.log
max_binlog_size = 1G
max_relay_log_size = 1G
# if use auto-ex, set to 0
relay-log-purge = 1
# max binlog keeps days
expire_logs_days = 7
binlog_cache_size = 1M
# replication
#replicate-wild-ignore-table = mysql.%
#replicate-wild-ignore-table = test.%
# slave_skip_errors=all
key_buffer_size = 30M
sort_buffer_size = 2M
read_buffer_size = 2M
join_buffer_size = 8M
read_rnd_buffer_size = 8M
bulk_insert_buffer_size = 64M
myisam_sort_buffer_size = 64M
myisam_max_sort_file_size = 10G
myisam_repair_threads = 1
myisam_recover
group_concat_max_len = 64K
transaction_isolation = REPEATABLE-READ
innodb_file_per_table
#############mysql5.5new################
innodb_file_format = Barracuda
########################################
innodb_additional_mem_pool_size = 10M
innodb_buffer_pool_size = 200M
innodb_data_home_dir = $mysql_dir/data/
innodb_data_file_path = ibdata1:100M:autoextend
################mysql5.5new############
innodb_read_io_threads = 8
innodb_write_io_threads = 8
innodb_purge_threads = 1
########################################
innodb_thread_concurrency = 16
innodb_flush_log_at_trx_commit = 1
innodb_log_buffer_size = 16M
innodb_log_file_size = 50M
innodb_log_files_in_group = 2
innodb_log_group_home_dir = $mysql_dir/data/
innodb_max_dirty_pages_pct = 90
innodb_lock_wait_timeout = 50
#innodb_flush_method = O_DSYNC
################mysql5.6 new#####################
innodb_buffer_pool_instances = 16
innodb_change_buffering = all
innodb_adaptive_flushing = 1
innodb_io_capacity = 2000
innodb_old_blocks_time = 1000
innodb_stats_on_metadata = 0
#################################################
old-passwords = 0
[mysqldump]
quick
max_allowed_packet = 64M
[mysql]
no-auto-rehash
default-character-set = utf8
connect-timeout = 3
[myisamchk]
key_buffer_size = 256M
sort_buffer_size = 256M
read_buffer = 2M
write_buffer = 2M
[mysqlhotcopy]
interactive-timeout
EOF
####4.初始化数据库并启动####
cd $mysql_dir/scripts
./mysql_install_db --basedir=$mysql_dir --datadir=$mysql_dir/data --user=root
cd $mysql_dir/bin
./mysqld_safe --defaults-file=$mysql_dir/etc/my.cnf --user=root &
####5.添加mysql命令到环境变量中####
echo "export PATH=$mysql_dir/bin:$PATH" >>/root/.bash_profile
source /root/.bash_profile
转载于:https://blog.51cto.com/jianhuchenmou/1887683
mysql自动安装脚本相关推荐
- mysql 自动安装脚本_mysql 5.7自动安装脚本
mysql_version=mysql-5.7.23-linux-glibc2.12-x86_64 install_pack=/root/$mysql_version.tar.gz # 将mysql安 ...
- Mysql自动备份脚本
1.Mysql自动备份脚本 #!/bin/sh # 数据库基本信息 #数据库名称 DB_NAME="test" #用户名 DB_USER="root" #密码 ...
- mysql脚本简书,mysql一键安装脚本
#!/bin/bash #MySQL一键安装脚本 #脚本运行前请确认本机没有安装其他版本的MySQL #运行脚本前请详细阅读my.cnf文件 PASSWORD=`cat my.cnf | grep p ...
- httpd-2.2.21 + php-5.3.8 自动安装脚本
httpd-2.2.21 + php-5.3.8 自动安装脚本 http://netkiller.github.com/#!/bin/bash #=========================== ...
- mysql 自动复制_MySQL 复制搭建(附mysql自动搭建脚本)
# MySQL 复制搭建(附mysql自动搭建脚本) 1. 用自动化脚本拉起一个mysql数据库,作为主库 `[root@upright92 mysql]# ./install_mysql.py 33 ...
- Puppet客户端自动安装脚本
运维自动化发展已经是势不可挡,传统的靠大量人力运维的方式渐不能满足企业IT发展的需求,其中Puppet自动化更是受到IT人士的青睐,那今天我们一起来研究一下puppet客户端的自动安装脚本.脚本不足之 ...
- Linux从入门到精通——自动安装脚本
###kickstart 自动安装脚本的制作### KickStart是什么,有什么作用? KickStart是一种无人职守安装方式.KickStart的工作原理是通过记录典型的安装过程中所需人 ...
- Hadoop自动安装脚本
Hadoop自动安装脚本 文章目录 Hadoop自动安装脚本 前言 脚本说明 脚本截图 后记 前言 最近在学习大数据的相关知识,对于 Hadoop的安装这一块,身边不少同学安装都存在许多问题,不行安装 ...
- Nginx自动安装脚本
如下脚本为Nginx自动安装脚本,仅供参考,可以根据实际情况修改,这里使用case方式,真实环境安装可以去掉case这种模式,全自动安装. #!/bin/sh ###nginx install she ...
最新文章
- 自我介绍(老师作业,大神自行忽略)
- Virtual Studio 2010介绍及下载
- 1-10所有5个数的组合_121期大乐透:关注10+5、重点号6个
- android游戏源码 2048,Android实现2048小游戏
- 2018-10-8-如何安装-btsync
- BSS,ESS,SSID,BSSID,ESSID,VAP概念详解
- ps4正在连接ea服务器,ps4极品飞车19连不上ea服务器 | 手游网游页游攻略大全
- python输出excel指定列为文本格式_POI设置excel某列值为文本格式
- Python获取指定月份的所有天数
- 如何配置一台能够进行Gromacs科学计算的电脑
- LCCUP 力扣杯2020秋季编程大赛题解
- 1一10到时的英文单词_1到10的英文单词
- ArcGIS空间数据查询与处理
- php许愿墙mysql_许愿墙的搭建基于mysql
- Springboot 设置post参数大小: 解决报错The multi-part request contained parameter data (excluding uploaded files
- wordpress如何访问网页时显示域名不显示ip
- 秒懂Excel的三种引用
- Nvidia回应Linux之父的指责 坚持不做任何让步
- [渝粤教育] 中国地质大学 高等数学(二) 复习题
- vmware虚拟机系统esxi不能识别不兼容网卡解决方案
热门文章
- 任丽萍跟我赌200块钱的
- HttpHandler解析并展示PDF文档内容
- BXP_4.1安装配置及域应用随记一
- 利用iTextSharp把DataTable导出为PDF和RTF(Rich Text Format)文件
- 图片异步加载框架 Android-Universal-Image-Loader
- 执行jar包中的某个类
- System.out和System.err的区别
- 在ubuntu系统下cocos2dx移植到android平台
- redis缓存雪崩,缓存穿透,缓存击穿的解决方法
- 【译】Effective TensorFlow Chapter11——在TensorFlow中调试模型