您的位置:首页 > 运维架构 > Shell

Linux-shell脚本-mysql一键安装

2016-06-08 22:26 751 查看

安装环境

CentOS-7-x86_64-DVD-1511.iso

mysql-5.6.29-linux-glibc2.5-x86_64.tar.gz

mysql_install.sh脚本

mysql_install.sh脚本

#!/bin/bash

#输入mysql压缩文件地址
fileName=$1;
if [ -f ${fileName} ]
then
#解压mysql
tar -zxvf ${fileName};
echo 'mysql解压完成,正在删除/usr/local/mysql文件夹';
rm -rf /usr/local/mysql;
echo '删除文件夹完成,正在移动解压后的文件';
mv ${fileName%%.tar.gz} /usr/local/mysql;
cd /usr/local/mysql;
else
echo '请输入正确的文件';
fi

#如果系统缺少Data:Dumper模块需要打开下面命令
#yum -y install autoconf;

echo '移动完成,正在初始化数据库';
#初始化数据库
#scripts/mysql_install_db --user=mysql;
scripts/mysql_install_db --user=mysql --explicit_defaults_for_timestamp;

#创建mysql用户和组
groupadd mysql;
useradd -g mysql mysql;

#修改文件夹的用户和组
chown -R root .;
chown -R mysql data;
chgrp -R mysql .;

echo '初始化数据库完成,正在修改mysql配置文件';
#修改mysql配置文件
sed -i '/mysqld/a\datadir = \/usr\/local\/mysql\/data' my.cnf;
sed -i '/mysqld/a\basedir = \/usr\/local\/mysql' my.cnf;
sed -i '/mysqld/a\character-set-server=utf8' my.cnf;
sed -i '/mysqld/a\port = 3306' my.cnf;
sed -i '/mysqld/i\[client]' my.cnf;
sed -i '/mysqld/i\port = 3306' my.cnf;
sed -i '/mysqld/i\default-character-set=utf8' my.cnf;
sed -i '/mysqld/i\ ' my.cnf;
sed -i '/mysqld/i\[mysql]' my.cnf;
sed -i '/mysqld/i\default-character-set=utf8' my.cnf;
sed -i '/mysqld/i\ ' my.cnf;

echo '修改mysql配置文件完成,正在将mysql加入服务中';
cp -rf support-files/mysql.server /etc/init.d/mysql

echo 'mysql加入服务完成,正在添加开机自启动';
chkconfig mysql on

echo '添加开机自启动成功';


example

//一键安装
sh mysql_install.sh mysql-5.6.29-linux-glibc2.5-x86_64.tar.gz
//执行完后开启mysql服务
service mysql start
//开启服务失败请按最后错误提示排错,排错后选择性继续

//进去mysql安装目录
cd /usr/local/mysql
//修改root密码
./bin/mysqladmin -u root password "123456"


错误1:The server quit without updating PID file问题的解决办法

1.可能进程里已经存在mysql进程

解决方法:用命令“ps -ef|grep mysqld”查看是否有mysqld进程,如果有使用“kill -9 进程号”杀死,然后重新启动mysqld!

2.以前安装mysql的配置文件没有删除

解决办法:用命令“find / -name my.cnf*”查看是否有文件,如果有需要全部删除,

3.selinux惹的祸,如果是centos系统,默认会开启selinux

解决方法:关闭它,打开/etc/selinux/config,把SELINUX=enforcing改为SELINUX=disabled后存盘退出重启机器试试。

4.如果未解决,请百度一下吧

错误2:缺少Data:Dumper模块

打开mysql_install.sh脚本中这一行注释 #yum -y install autoconf;

错误3:’Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)’

首先查找mysql.sock文件在哪里

find / -name mysql.sock


我的是在/temp/mysql.sock目录下

找到之后输入命令重启mysql服务后搞定

ln -s /temp/mysql.sock /tmp/mysql.sock
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: