mysql自动安装脚本
为适应自己工作习惯和需要,花一点时间写了一个mysql自动安装脚本,供大家参考学习。注意:
1、需要先安装cmake
2、数据库版本需要在第二步安装mysql时修改
3、该脚本是以root用户安装并启动
脚本内容如下:
########################################################################
#mysql自动安装脚本,其中变量/mysql_v_dir/和/port/可根据实际需要修改 #
#执行脚本命令:shmysql_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 tmpetc
#chown mysql:mysqldata log tmp etc
####2.安装mysql####
cd $mk_mysqldir
tar -xzfmysql-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
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 keepsdays
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.6new#####################
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
quick
max_allowed_packet = 64M
no-auto-rehash
default-character-set = utf8
connect-timeout = 3
key_buffer_size =256M
sort_buffer_size =256M
read_buffer = 2M
write_buffer = 2M
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 "exportPATH=$mysql_dir/bin:$PATH" >>/root/.bash_profile
source/root/.bash_profile
页:
[1]