IT袋

当前位置:主页 > 经验教程 > 建站编程 >

自动化安装MySQL数据库的Shell脚本

自动化安装MySQL数据库的Shell脚本(4)

时间:2024-01-22 20:23:04 来源:IT袋 作者:马勇
导读:自动化安装MySQL数据库的Shell脚本,可执行文件,并使用指定的配置文件、安装目录、数据目录和用户来初始化 MySQL 数据库。 --initialize-insecure :以不安全的方式初始化数据库,会创建一个空

自动化安装MySQL数据库的Shell脚本

可执行文件,并使用指定的配置文件、安装目录、数据目录和用户来初始化MySQL数据库。

  • --initialize-insecure:以不安全的方式初始化数据库,会创建一个空密码的root用户。

第十一步:添加开机启动

echo "[INFO] 添加mysql服务, 以及开机启动..."
ln -sf ${binDir}/bin/mysql /usr/local/bin/mysql
ln -sf ${binDir}/support-files/mysql.server /etc/init.d/mysql
/usr/bin/systemctl enable mysql
  • ln -sf ${binDir}/bin/mysql /usr/local/bin/mysql:创建一个符号链接,将${binDir}/bin/mysql链接到/usr/local/bin/mysql-s:表示创建一个符号链接,-f:表示如果/usr/local/bin/mysql已经存在,则先删除。${binDir}/bin/mysql是源文件,/usr/local/bin/mysql是链接文件。
  • ln -sf ${binDir}/support-files/mysql.server /etc/init.d/mysql:创建一个符号链接,将${binDir}/support-files/mysql.server链接到/etc/init.d/mysql-s选项表示创建一个符号链接,-f选项表示如果/etc/init.d/mysql已经存在,则先删除。${binDir}/support-files/mysql.server是源文件,/etc/init.d/mysql是链接文件。
  • /usr/bin/systemctl enable mysql:使用systemctl命令启用mysql服务,使其在系统启动时自启动。

第十二步:启动 MySQL 服务

echo "[INFO] 启动mysql服务..."
service mysql start
if [ $? -ne 0 ];then
  echo "[ERROR] mysql启动失败, 查看mysql日志: ${dataDir}下的.err文件"
  exit 2
fi
  • echo "[INFO] 启动mysql服务...":用于在控制台输出一条信息,提示用户正在启动MySQL服务。
  • service mysql start:启动MySQL服务。
  • if [ $? -ne 0 ];then:条件语句,用于检查上一条命令的执行结果。$?:是一个特殊变量,用于获取上一个命令的退出状态。如果上一个命令执行成功,其退出状态为0,否则为非0
  • echo "[ERROR] mysql启动失败, 查看mysql日志: ${dataDir}下的.err文件"MySQL服务启动失败时,将输出一条错误信息,并提示查看MySQL日志文件。
  • exit 2:如果MySQL服务启动失败,将以退出码2结束执行,表示出现了错误。

第十三步:在 MySQL 数据库中创建用户、数据库和授予权限

echo "[INFO] 修改mysql用户密码..."
${binDir}/bin/mysql -uroot <<EOF
SET PASSWORD = PASSWORD('${mysqlPassword}');
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
create database hive;
create database ranger;
create user 'hive' identified by '1q!2w@3e#';
grant all on *.* to hive@"%" identified by "1q!2w@3e#";
grant all on *.* to root@'%' identified by'1q!2w@3e#';
UPDATE mysql.user SET Grant_priv='Y', Super_priv='Y' WHERE User='root';
FLUSH PRIVILEGES;
EOF
echo "[INFO] 安装完成"
exit 0

相关阅读

  • openstack的核心组件有哪些? openstack组件功能详解

    openstack的核心组件有哪些? openstack组件功能详解

    这些方法你知道吗?openstack的核心组件有哪些的相关经验,具体介绍如下: OpenStack 是一个庞大的项目,包含许多不同的组件,这些组件共同协作,为云计算环境提供核心功能。 以下是一些

  • date函数的使用方法及实例 数据库modify的用法

    date函数的使用方法及实例 数据库modify的用法

    跟大家聊一聊date函数的使用方法及实例和数据库modify的用法的相关知识,具体介绍如下: 在年龄、工龄等时长的计算中,大家一贯的做法都是当前年份或者离职年份减去出生年份或者上班年份

  • 前端开发工具有哪些类型 常用的web前端开发工具推荐

    前端开发工具有哪些类型 常用的web前端开发工具推荐

    小编为网友们解答前端开发工具有哪些类型和常用的web前端开发工具推荐IT技巧方面的经验,下面来一起了解一下吧。 下面我们介绍四款比较常用的前端开发工具,具体哪一款最好用,因人而

  • 公司网站如何制作设计 公司网页制作流程

    公司网站如何制作设计 公司网页制作流程

    为网友们解答公司网站如何制作设计和公司网页制作流程的IT知识,很不错的方法小知识,建议收藏哦! 公司网站对于大部分企业来说还是一定的用处的,不管是在互联网中充当一张企业名片