文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Linux下mysql5.6.24(二进制)自动安装脚本

2024-04-02 19:55

关注

本文为大家分享了Linux环境下mysql5.6.24自动安装脚本代码,供大家参考,具体内容如下

说明:

一、本脚本仅供测试使用,若正式环境想要使用,需更改脚本的一些参数。

二、使用本脚本之前,需保证linux环境可以联网下载,若不能联网,则需要将下载好的mysql二进制包上传至linux中的/data目录下。

三、脚本使用是需一次输入三个参数:

1、需安装的mysql版本号,如:5.6.24

2、需安装的mysql端口设置,如:3306

3、mysql的server_id设置,如:1003306

使用步骤:

1、将下列脚本上传至linux环境中,我个人是以mysql_install.sh命名


#!/bin/bash 
#mysql_install by chen 
#Email:chenhz1218@gmail.com & 296966488@qq.com 
#version 2.0 
#安装版本 5.6.20-5.6.25 
#安装要求: 
#需要可以联网,若无网络,可以先创建/data目录,将安装包上传到/data目录下 
 
#判断/data目录是否存在,若不存在则创建,并且下载mysql 
datamenu="/data" 
read -p "Input a mysql version:" -t 30 mysql_version 
read -p "Input a mysql port:" -t 30 mysql_port 
read -p "Input a mysql_server_id:" -t 30 mysql_server_id 
mysqlfile="$datamenu/mysql-$mysql_version-linux-glibc2.5-x86_64.tar.gz" 
 
if [ ! -d "$datamenu" ];then 
  mkdir "$datamenu" 
  wget -P /data http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-$mysql_version-linux-glibc2.5-x86_64.tar.gz 
elif [ ! -f "$mysqlfile" ];then 
  wget -P /data http://dev.mysql.com/get/Downloads/MySQL-5.6/mysql-$mysql_version-linux-glibc2.5-x86_64.tar.gz 
fi 
 
#解压下载好的mysql 
cd /opt 
mkdir mysql 
cd mysql 
tar zxvf $mysqlfile -C /opt/mysql 
 
#创建mysql用户 
 
egrep "^mysql" /etc/group >& /dev/null 
if [ $? -ne 0 ] 
then 
 groupadd mysql 
fi 
 
#create user if not exists 
egrep "^mysql" /etc/passwd >& /dev/null 
if [ $? -ne 0 ] 
then 
 useradd -g mysql -s /sbin/nologin -d /usr/local/mysql mysql 
fi 
 
 
#创建mysql软连接,并授权给mysql用户 
cd /usr/local/ 
rm -rf /usr/local/mysql 
ln -s /opt/mysql/mysql-$mysql_version-linux-glibc2.5-x86_64 /usr/local/mysql 
chown -R mysql:mysql /usr/local/mysql 
chown -R mysql:mysql /usr/local/mysql/ 
 
#基于配置文件,创建mysql安装目录,并授权 
mkdir -p /data/mysql 
mkdir -p /data/mysql/mysql${mysql_port} 
cd /data/mysql/mysql${mysql_port}/ 
mkdir /data/mysql/mysql${mysql_port}/data 
mkdir /data/mysql/mysql${mysql_port}/logs 
mkdir /data/mysql/mysql${mysql_port}/tmp 
chown -R mysql:mysql /data/mysql/mysql${mysql_port} 
 
cat > /etc/my.cnf << EOF 
 
[client] 
port   = ${mysql_port} 
socket   = /tmp/mysql.sock 
 
# The MySQL server 
[mysqld] 
# Basic 
port   = ${mysql_port} 
user  = mysql 
basedir   = /usr/local/mysql 
datadir   = /data/mysql/mysql${mysql_port}/data 
tmpdir   = /data/mysql/mysql${mysql_port}/tmp 
socket   = /tmp/mysql.sock 
 
log-bin  = /data/mysql/mysql${mysql_port}/logs/mysql-bin 
 
log-error = error.log 
slow-query-log-file = slow.log 
skip-external-locking 
skip-name-resolve 
log-slave-updates 
 
lower_case_table_names = 1 #忽略表名大小写 
 
character_set_server   = gbk 
innodb_file_per_table   = 1 
innodb_autoinc_lock_mode  = 2 
 
explicit_defaults_for_timestamp = true 
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 
 
EOF 
 
 
#初始化mysql 
 
cd /usr/local/mysql 
./scripts/mysql_install_db --defaults-file=/etc/my.cnf 
 
 
#在/etc/init.d下创建mysql 启动脚本 
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql 
 
 
#添加环境变量,并使/etc/profile环境变量生效 
echo "export PATH=$PATH:/usr/local/mysql/bin">>/etc/profile 

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 资料下载
  • 历年真题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯