设为首页 收藏本站
查看: 1119|回复: 0

[经验分享] mysql自动安装脚本

[复制链接]

尚未签到

发表于 2018-10-11 08:31:24 | 显示全部楼层 |阅读模式
  为适应自己工作习惯和需要,花一点时间写了一个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
  [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 "exportPATH=$mysql_dir/bin:$PATH" >>/root/.bash_profile
  source/root/.bash_profile


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-620163-1-1.html 上篇帖子: gearman实现redis缓存mysql-DBAspace 下篇帖子: centos6.8中open***使用mysql认证
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表