广告
返回顶部
首页 > 资讯 > 数据库 >mysql源码安装的脚本分享
  • 248
分享到

mysql源码安装的脚本分享

2023-06-09 19:06:01 248人浏览 独家记忆
摘要

这篇文章主要讲解了“mysql源码安装的脚本分享”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Mysql源码安装的脚本分享”吧!代码如下:#!/bin/bashPATH=/bin:/sbin

这篇文章主要讲解了“mysql源码安装的脚本分享”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Mysql源码安装的脚本分享”吧!

代码如下:

#!/bin/bashPATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/binexport PATHclear;SysName=""SysBit=""CpuNum=""RamTotal=""RamSwap=""FileMax=""mysqlVersion="Percona-Server-5.6.15-rel63.0"MysqlLine="Http://www.percona.com/downloads/Percona-Server-5.6/LATEST/source"MysqlPath="/usr/local/mysql"MysqlDataPath="$MysqlPath/data"MysqlLogPath="/var/log/mysql"MysqlConfigPath="$MysqlPath/conf"MysqlPass="test123"SYSTEM_CHECK(){ [[ $(id -u) != '0' ]] && echo '[Error] Please use root to install PUPPET.' && exit; egrep -i "Centos" /etc/issue && SysName='centos'; egrep -i "ubuntu" /etc/issue && SysName='ubuntu'; [[ "$SysName" == '' ]] && echo '[Error] Your system is not supported this script' && exit; SysBit='32' && [ `getconf Word_BIT` == '32' ] && [ `getconf LONG_BIT` == '64' ] && SysBit='64'; CpuNum=`cat /proc/cpuinfo |grep 'processor'|wc -l`; RamTotal=`free -m | grep 'Mem' | awk '{print $2}'`; RamSwap=`free -m | grep 'Swap' | awk '{print $2}'`; FileMax=`cat /proc/sys/fs/file-max`}INSTALL_BASE_PACKAGES(){ SYSTEM_CHECK if [ "$SysName" == 'centos' ]; then  echo '[yum-fastestmirror Installing] ************************************************** >>';  yum -y install yum-fastestmirror;  cp /etc/yum.conf /etc/yum.conf.lnmp  sed -i 's:exclude=.*:exclude=:g' /etc/yum.conf  for packages in GCc gcc-c++ openssl-devel ncurses-devel wget crontabs iptables bison cmake automake make readline-devel logrotate openssl; do    echo "[${packages} Installing] ************************************************** >>";   yum -y install $packages;   done;  mv -f /etc/yum.conf.lnmp /etc/yum.conf; else  apt-get remove -y mysql-client mysql-server mysql-common;  apt-get update;  for packages in gcc g++ cmake make ntp logrotate cron bison libncurses5-dev libncurses5 libssl-dev openssl curl openssl; do   echo "[${packages} Installing] ************************************************** >>";   apt-get install -y $packages --force-yes;apt-get -fy install;apt-get -y autoremove;   done; fi;}INSTALL_MYSQL(){ INSTALL_BASE_PACKAGES cd /tmp/ echo "[${MysqlVersion} Installing] ************************************************** >>"; [ ! -f ${MysqlVersion}.tar.gz ] && wget -c ${MysqlLine}/${MysqlVersion}.tar.gz tar -zxf /tmp/$MysqlVersion.tar.gz; cd /tmp/$MysqlVersion; groupadd mysql; useradd -s /sbin/nologin -g mysql mysql; cmake -DCMAKE_INSTALL_PREFIX=$MysqlPath  -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_EXTRA_CHARSETS=complex -DWITH_READLINE=ON -DENABLED_LOCAL_INFILE=ON -DWITH_INNODB_MEMCACHED=ON -DWITH_UNIT_TESTS=OFF; make -j $Cpunum; make install; for path in $MysqlLogPath $MysqlPath $MysqlConfigPath/conf.d $MysqlDataPath;do  [ ! -d $path ] && mkdir -p $path  chmod 740 $path;  chown -R mysql:mysql $path; done# EOF **********************************cat > $MysqlConfigPath/my.cnf<<EOF;[mysqld]user  = mysqlserver-id = 1pid-file = /var/run/mysqld.pidSocket  = /var/run/mysqld.sockport  = 3306basedir  = $MysqlPathdatadir  = $MysqlDataPathbind-address = 0.0.0.0skip-name-resolveskip-external-lockingthread_concurrency = `expr $CpuNum \* 2`max_connections = `expr $FileMax \* $CpuNum \* 2 / $RamTotal`max_connect_errors = 30table_open_cache = `expr $RamTotal + $RamSwap`max_allowed_packet = `expr $RamTotal \* 2 / 1000`Mbinlog_cache_size = 4Mmax_heap_table_size = `expr $RamTotal / 100`Msort_buffer_size = `expr $RamTotal \* 2 / 1000`Mjoin_buffer_size = `expr $RamTotal \* 2 / 1000`MQuery_cache_size = `expr $RamTotal / 100`Mthread_cache_size = 30thread_concurrency = `expr $CpuNum \* 4`connect_timeout  = 1200wait_timeout  = 1200general_log = 1general_log_file = $MysqlLogPath/mysql.loglog_error = $MysqlLogPath/mysql-err.logslow_query_log = 1slow_query_log_file = $MysqlLogPath/mysql-slow.loglong_query_time = 3log_bin = $MysqlLogPath/mysql-binlog_bin_index = $MysqlLogPath/mysql-bin.indexexpire_logs_days = 7max_binlog_size = `expr $(df -m $MysqlLogPath |awk 'NR==2{printf "%s\n",$4}') / 10000`Mdefault_storage_engine = InnoDBinnodb_buffer_pool_size = `expr $RamTotal / 100`Minnodb_log_buffer_size = 8Minnodb_file_per_table = 1innodb_open_files = `expr $FileMax \* $CpuNum / $RamTotal`innodb_io_capacity = `expr $FileMax \* $CpuNum / $RamTotal`innodb_flush_method = O_DIRECT!includedir $$MysqlConfigPath/conf.d[mysqld_safe]open_files_limit = `expr $FileMax / $CpuNum / 100`[isamchk]key_buffer  = 16M[mysqldump]quickquote-namesmax_allowed_packet = 16MEOF# ************************************** $MysqlPath/scripts/mysql_install_db --user=mysql --defaults-file=$MysqlConfigPath/my.cnf --basedir=$MysqlPath --datadir=$MysqlDataPath;# EOF **********************************cat > /etc/ld.so.conf.d/mysql.conf<<EOF/usr/local/mysql/lib/mysql/usr/local/libEOF# ************************************** ldconfig; if [ "$SysBit" == '64' ] ; then  ln -s $MysqlPath/lib/mysql /usr/lib64/mysql; else  ln -s $MysqlPath/lib/mysql /usr/lib/mysql; fi; cp $MysqlPath/support-files/mysql.server /etc/init.d/mysqld; chmod 775 /etc/init.d/mysqld; /etc/init.d/mysqld start; ln -s $MysqlPath/bin/mysql /usr/bin/mysql; ln -s $MysqlPath/bin/mysqladmin /usr/bin/mysqladmin; $MysqlPath/bin/mysqladmin password $MysqlPass; rm -rf $MysqlDataPath/test;# EOF **********************************mysql -hlocalhost -uroot -p$MysqlPass <<EOFUSE mysql;DELETE FROM user WHERE user='';UPDATE user set password=password('$MysqlPass') WHERE user='root';DELETE FROM user WHERE not (user='root');DROP USER ''@'%';FLUSH PRIVILEGES;EOF# ************************************** echo "[OK] ${MysqlVersion} install completed.";}INSTALL_MYSQL

感谢各位的阅读,以上就是“mysql源码安装的脚本分享”的内容了,经过本文的学习后,相信大家对mysql源码安装的脚本分享这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是编程网,小编将为大家推送更多相关知识点的文章,欢迎关注!

您可能感兴趣的文档:

--结束END--

本文标题: mysql源码安装的脚本分享

本文链接: https://www.lsjlt.com/news/257560.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • mysql源码安装脚本分享
    #!/bin/bashPATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/binexport PATHclear;Sys...
    99+
    2022-06-04
    脚本 源码 mysql
  • mysql源码安装的脚本分享
    这篇文章主要讲解了“mysql源码安装的脚本分享”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“mysql源码安装的脚本分享”吧!代码如下:#!/bin/bashPATH=/bin:/sbin...
    99+
    2023-06-09
  • MySQL自动安装脚本分享
    本篇内容介绍了“MySQL自动安装脚本分享”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
    99+
    2022-10-18
  • 源码包编译安装MySQL 5.6脚本
    源码包编译安装MySQL5.6脚本,一个机器安装两个MySQL数据库,编译时指定端口,安装路径和socket文件位置。 安装完成的MySQL安装文件可以打包复制到别的机器使用,在别的机器使用时候只...
    99+
    2022-10-18
  • vtune自动安装脚本分享
    #!/bin/bash#!/usr/bin/expect -f#!/usr/bin/env bashyum install -y expect wgetcd /rootwget http://172.16....
    99+
    2022-06-04
    脚本 vtune
  • 最新热门脚本Autojs源码分享
    今天给大家分享一个包含最新50个热门脚本合集的源码,目前包括:矿牛守卫赚、热血星际、捉妖特工队、体重保卫战、炎兔、魔兽红包群、横扫太空、疯狂合体鸭、动物星球、猜猜什么歌等最热门的脚本...
    99+
    2022-11-12
  • mysql二进制文件安装配置脚本分享
    这篇文章主要介绍“mysql二进制文件安装配置脚本分享”,在日常操作中,相信很多人在mysql二进制文件安装配置脚本分享问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”mysq...
    99+
    2022-10-18
  • linux安装php扩展脚本分享
    测试环境:ubuntu 12.04 php 5.3.x #!/bin/bash#Program:# Accomplish to expand the specified function only one...
    99+
    2022-06-04
    脚本 linux php
  • Linux中源码包安装MySQL的shell脚本怎么写
    本篇文章给大家分享的是有关Linux中源码包安装MySQL的shell脚本怎么写,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。#!/bin/b...
    99+
    2022-10-18
  • Linux中PHP的源码安装shell脚本
    #!/bin/bash#安装PHPrpm -e php php-cli php-ldap php-common php-mysql --nodepsyum -y install zlib-devel lib...
    99+
    2022-10-18
  • MySQL5.6一键编译安装脚本分享
    本篇内容主要讲解“MySQL5.6一键编译安装脚本分享”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL5.6一键编译安装脚本分享”吧! ...
    99+
    2022-10-18
  • mysql的备份脚本分享
    本篇内容介绍了“mysql的备份脚本分享”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!#!/bin/bas...
    99+
    2022-10-18
  • mysql脚本安装的示例分析
    这篇文章主要为大家展示了“mysql脚本安装的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“mysql脚本安装的示例分析”这篇文章吧。 ...
    99+
    2022-10-18
  • shell脚本源码安装nginx的详细过程
    SHELL概念 SHELL是什么?SHELL是linux内核跟用户之间沟通的桥梁; SHELL也是一个命令解释器,用户可以输入命令到SHELL,SHELL将命令传递给Linux内核,内核处理完毕,返回给...
    99+
    2022-06-04
    shell脚本安装nginx shell安装nginx
  • MySQL源码安装的示例分析
    这篇文章主要介绍MySQL源码安装的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完! 操作系统:CentOS 6.7MySQL版本:5.6.30 ·  ...
    99+
    2022-10-18
  • shell脚本源码安装nginx的过程是什么
    本篇内容主要讲解“shell脚本源码安装nginx的过程是什么”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“shell脚本源码安装nginx的过程是什么”吧!SHELL概念SHELL是什么?SH...
    99+
    2023-06-25
  • PHP源码编译安装管理常用的脚本
    本篇内容介绍了“PHP源码编译安装管理常用的脚本”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!#!/bin...
    99+
    2022-10-19
  • mysql数据备份的脚本分享
    本篇内容主要讲解“mysql数据备份的脚本分享”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“mysql数据备份的脚本分享”吧!  #!/usr/bin...
    99+
    2022-10-18
  • 检测mysql状态的脚本分享
    本篇内容介绍了“检测mysql状态的脚本分享”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!#!/bin/b...
    99+
    2022-10-18
  • 源码安装apache脚本部署过程详解
    目录源码安装apache脚本部署源码安装apache脚本部署 [root@localhost ~]# ls anaconda-ks.cfg httpd.tar.xz [root@localhost ~]# tar xf...
    99+
    2022-09-22
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作