当前位置:Gxlcms > mysql > 生产库自动化MySQL5.6安装部署详细教程

生产库自动化MySQL5.6安装部署详细教程

时间:2021-07-01 10:21:17 帮助过:30人阅读

自动化运维是一个DBA应该掌握的技术,其中,自动化安装数据库是一项基本的技能,本文中的安装脚本已通过测试,作为生产库来说没有问题,鉴于每个公司存储规划要求不同,可以按需自行修改脚本。

脚本中已经注释说明一些基本的安装信息

本脚本默认启用5.6部分新特性

  1. innodb_buffer_pool_dump_at_shutdown=1 它dump的不是数据,是Id号
  2. innodb_buffer_pool_load_at_startup=1

开启这个两个参数当数据库重启后把这些热数据重新加载回去

只有正常关库才会dump热数据块,宕机和kill -9不会

部分参数按需整改,例如innodb_buffer_pool_size = 512M,本文给的512M,一般给内存的50%-80%。

来看一下脚本的具体情况[root@HE3 ~]# cat mysql_auto_install.sh

  1. ######二进制自动安装数据库脚本root密码MANAGER将脚本和安装包放在/root目录即可###############
  2. ######数据库目录/usr/local/mysql############
  3. ######数据目录/data/mysql############
  4. ######日志目录/log/mysql############
  5. ######端口号默认3306其余参数按需自行修改############
  6. ##################
  7. #author:rrhelei@126.com#
  8. ##################
  9. #!/bin/bash
  10. PATH=/bin:/sbin:/usr/bin:/usr/sbin:/opt/bin:/opt/sbin:~/bin
  11. export
  12. PATH
  13. #Check
  14. ifuserisroot
  15. if[$(id
  16. -u)!="0"];then
  17. echo"Error:Youmustberoottorun
  18. thisscript,pleaseuseroottoinstall"
  19. exit1
  20. fi
  21. clear
  22. echo
  23. "========================================================================="
  24. echo
  25. "Atooltoauto-compile&installMySQL5.6.25onRedhat/CentOSLinux
  26. "
  27. echo
  28. "========================================================================="
  29. cur_dir=$(pwd)
  30. #set
  31. mysqlrootpassword
  32. echo"==========================="
  33. mysqlrootpwd="MANAGER"
  34. echo-e"Pleaseinputtherootpasswordofmysql:"
  35. read-p"(Defaultpassword:MANAGER):"mysqlrootpwd
  36. if["$mysqlrootpwd"=""];then
  37. mysqlrootpwd="MANAGER"
  38. fi
  39. echo"==========================="
  40. echo"MySQLrootpassword:$mysqlrootpwd"
  41. echo"==========================="
  42. #which
  43. MySQLVersiondoyouwanttoinstall?
  44. echo
  45. "==========================="
  46. isinstallmysql56="n"
  47. echo"InstallMySQL5.6.25,Pleaseinputy"
  48. read-p"(Pleaseinputy,n):"isinstallmysql56
  49. case"$isinstallmysql56"in
  50. y|Y|Yes|YES|yes|yES|yEs|YeS|yeS)
  51. echo"YouwillinstallMySQL5.6.25"
  52. isinstallmysql56="y"
  53. ;;
  54. *)
  55. echo"INPUTerror,YouwillexitinstallMySQL5.6.25"
  56. isinstallmysql56="n"
  57. exit
  58. esac
  59. get_char()
  60. {
  61. SAVEDSTTY=`stty-g`
  62. stty-echo
  63. sttycbreak
  64. #ddif=/dev/ttybs=1count=12>/dev/null
  65. stty-raw
  66. sttyecho
  67. stty$SAVEDSTTY
  68. }
  69. echo""
  70. echo"Pressanykeytostart...orPressCtrl+ctocancel"
  71. char=`get_char`
  72. #
  73. Initializetheinstallationrelated
  74. content.
  75. function
  76. InitInstall()
  77. {
  78. cat/etc/issue
  79. uname-a
  80. MemTotal=`free-m|grepMem|awk'{print$2}'`
  81. echo-e"\nMemoryis:${MemTotal}MB"
  82. #Settimezone
  83. rm-rf/etc/localtime
  84. ln-s/usr/share/zoneinfo/Asia/Shanghai/etc/localtime
  85. #DeleteOldMysqlprogram
  86. rpm-qa|grepmysql
  87. rpm-emysql
  88. #yum-yremovemysql-servermysqlmysql-libs
  89. #yum-yremovephp-mysql
  90. #yum-yinstallyum-fastestmirror
  91. #yum-yupdate
  92. #DisableSeLinux
  93. if[-s/etc/selinux/config];then
  94. sed-i's/SELINUX=enforcing/SELINUX=disabled/g'/etc/selinux/config
  95. fi
  96. setenforce0
  97. }
  98. #Installation
  99. ofdependonandoptimizationoptions.
  100. function
  101. InstallDependsAndOpt()
  102. {
  103. cd
  104. $cur_dir
  105. cat
  106. >>/etc/security/limits.conf<>/etc/sysctl.conf
  107. }
  108. #Install
  109. MySQL
  110. function
  111. InstallMySQL56()
  112. {
  113. echo
  114. "============================InstallMySQL
  115. 5.6.22=================================="
  116. cd
  117. $cur_dir
  118. #Backup
  119. oldmy.cnf
  120. #rm-f
  121. /etc/my.cnf
  122. if[-s
  123. /etc/my.cnf];then
  124. mv/etc/my.cnf/etc/my.cnf.`date
  125. +%Y%m%d%H%M%S`.bak
  126. fi
  127. #mysql
  128. directoryconfiguration
  129. groupadd
  130. mysql-g512
  131. useradd-u512-gmysql-s/sbin/nologin-d/home/mysqlmysql
  132. tarxvf/root/mysql-5.6.25-linux-glibc2.5-x86_64.tar.gz
  133. mv/root/mysql-5.6.25-linux-glibc2.5-x86_64/usr/local/mysql
  134. mkdir-p/data/mysql
  135. mkdir-p/log/mysql
  136. chown-Rmysql:mysql/data/mysql
  137. chown-Rmysql:mysql/usr/local/mysql
  138. chown-Rmysql:mysql/log
  139. #edit/etc/my.cnf
  140. SERVERID=`ifconfigeth0|grep"inetaddr"|awk'{print$2}'|awk-F.'{print$4"3306"}'`
  141. cat
  142. >>/etc/my.cnf<>/etc/ld.so.conf.d/mysql-x86_64.conf<>/etc/profile</tmp/mysql_sec_script<&1|tee/root/mysql-install.log
  143. CheckAndDownloadFiles2>&1|tee-a/root/mysql-install.log
  144. InstallDependsAndOpt2>&1|tee-a/root/mysql-install.log
  145. InstallMySQL562>&1|tee-a/root/mysql-install.log
  146. CheckInstall2>&1|tee-a/root/mysql-install.log

执行脚本后,输入用户名密码(默认MANAGER)后登录数据库成功。

  1. wKioL1fOIHTQR5ktAAElfoh_FOg089.jpg-wh_50

以上所述是小编给大家介绍的生产库自动化MySQL5.6安装部署详细教程,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

您可能感兴趣的文章:

  • MySQL5.6下windows msi安装详细介绍
  • MySQL 5.6 (Win7 64位)下载、安装与配置图文教程
  • mysql 5.6.17 绿色版(免安装)安装配置教程
  • win2008 R2 WEB环境配置之MYSQL 5.6.22安装版安装配置方法
  • MySQL绿色版(zip解压版)的安装图文教程(mysql-5.6.22-win32.zip)

人气教程排行