Ansible批量安装mysql数据
1.构建安装目录
mkdir -p /ansible/roles/mysql/{defaults,files,handlers,meta,tasks,templates,vars}
defaults 默认寻找路径
tasks 存放playbooks路径
files 存放文件和脚本,copy模块文件搜索路径
templates 模版存放路径
handlers notify调用部分playbook存放路径
vars roles内变量存放路径
2.文件目录结构
3.playbooks & Shell
/etc/ansible/roles/mysql/files/install_mysql.sh脚本内容为:
#!/bin/bash # DBDIR='/data/mysql/' PASSWD='fanshine123' [ -d $DBDIR ] || mkdir $DBDIR -p id mysql &> /dev/null if [ $? -ne 0 ];thenuseradd mysql -s /sbin/nologin -M fi chown -R mysql.mysql $DBDIR cd /tmp/ tar xf mysql-5.6.13.tar.gz cd mysql-5.6.13 cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ -DMYSQL_DATADIR=$DBDIR \ -DMYSQL_UNIX_ADDR=$DBDIR/mysql.sock \ -DDEFAULT_CHARSET=utf8 \ -DEXTRA_CHARSETS=all \ -DENABLED_LOCAL_INFILE=1 \ -DWITH_READLINE=1 \ -DDEFAULT_COLLATION=utf8_general_ci \ -DWITH_EMBEDDED_SERVER=1 if [ $? != 0 ];thenecho "make error!"exit 1 fi make && make install if [ $? -ne 0 ];thenecho "install mysql is failed!" && /bin/false fi sleep 2 ln -s /usr/local/mysql/bin/* /usr/bin/ cp -f /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf cp -f /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld chmod 700 /etc/init.d/mysqld /usr/local/mysql/scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=$DBDIR --user=mysql if [ $? -ne 0 ];thenecho "install mysql is failed!" && /bin/false fi /etc/init.d/mysqld start if [ $? -ne 0 ];thenecho "install mysql is failed!" && /bin/false fi chkconfig --add mysqld chkconfig mysqld on /usr/local/mysql/bin/mysql -e "update mysql.user set password=password('$PASSWD') where host='localhost' and user='root';" /usr/local/mysql/bin/mysql -e "update mysql.user set password=password('$PASSWD') where host='127.0.0.1' and user='root';" /usr/local/mysql/bin/mysql -e "delete from mysql.user where user='';" /usr/local/mysql/bin/mysql -e "flush privileges;" if [ $? -eq 0 ];thenecho "ins_done" fi
/etc/ansible/roles/mysql/tasks/main.yml文件内容为:
- name: copy mysql to clientcopy: src=mysql-5.6.13.tar.gz dest=/tmp/mysql-5.6.13.tar.gz - name: copy install_script to clientcopy: src=install_mysql.sh dest=/tmp/install_mysql.sh owner=root group=root mode=755 - name: install mysqlshell: /bin/bash /tmp/install_mysql.sh
/etc/ansible/mysql.yml文件内容为:
- hosts: webserver remote_user: rootroles:- mysql
4.执行安装
[root@Centos ansible]# ansible-playbook mysql.yml --syntax-check --检查语法 [root@Centos ansible]# ansible-playbook mysql.yml --执行安装
转载于:https://blog.51cto.com/bovin/1963212
相关文章:

C#在客户端和服务端操作Excel文件
一、在客户端把数据导入到Excel文件步骤1、创建Excel application对象,打开或生成Excel文件//服务端创建StringBuilder对象System.Text.StringBuilder sbnew System .Text .StringBuilder (); //指定客户端执行语言sb.Append ("<Script LanguageVBScript&g…

oracle数据库同步交换的方法
oracle数据同步方案与实现:如何在两个oracle服务器之间交换数据?来源:无忧模板 作者:网络编辑 更新时间:2010-08-09 18:10 点击:次 方案一:建立两个数据库之间的DATA_LINK,直接将新数据写入另一数据库方案二:使用SQL *…

让语音助手听懂方言,这个数据集能搞定
来源 | HyperAI超神经头图 | 来源于网络 侵删方言是语音识别技术发展中必须要迈过去的坎儿,那么如何让模型能够听懂和理解方言呢?使用优质的数据集是一种的方法,本文将介绍一个经典的方言录音数据集 TIMIT。随着科技的成熟,语音识…

Django内置Admin
Django内置的Admin是对于model中对应的数据表进行增删改查提供的组件,使用方式有:依赖APP:django.contrib.authdjango.contrib.contenttypesdjango.contrib.messagesdjango.contrib.sessions模板的context_processors:django.cont…

Puppet扩展篇1-自定义fact结合ENC(hirea)的应用实践
零基础学习Puppet自动化配置管理系列文档在大量节点加入Puppet之后,你至少会面临两个比较大的问题:1、由于节点数的增多,site.pp文件必然会编写更多的节点条目,以及节点包含的类。假设你用Puppet管理500个节点,存在三种…

C#WinForm制作异形窗体/控件
制作异形窗体或控件的思路一般都是想办法生成一个region,然后设置给指定的窗口或控件。生成region的方法有很多,最常用的就是从一幅图片生成,把该图片中的透明色部分“抠”掉,剩下的部分作为一个region。设置窗口或控件的region可…

谷歌提出纯 MLP 构成的视觉架构,无需卷积、注意力 !
来源 | 迈微AI研习社责编 | 寇雪芹头图 | 下载于视觉中国当前,卷积神经网络(CNN)和基于自注意力的网络(如近来大火的 ViT)是计算机视觉领域的主流选择,但研究人员没有停止探索视觉网络架构的脚步。近日&…

HttpApplication事件ASP.NET页面周期
学习吧少年........................... 修改中........... 当一次请求到达IIS 1、http.sys将请求发送到指定的应用程序池。 2、应用程序池再将请求交给池中的工作进程(w3wp.exe), 3、w3wp.exe根据请求URL的后缀,决定加载那个ISAP…

C#实现对象的Xml格式序列化及反序列化
要序列化的对象的类: [Serializable]public class Person{private string name;public string Name{get{return name;}set{namevalue;}}public string Sex;public int Age31;public Course[] Courses;public Person(){}public Person(string Name){nameName;Sex&qu…

outlook2010 打开总是提示“正在加载配置文件”
公司员工的电脑一打开OUTLOOK2010的时候,总是提示“正在加载配置文件”,要重新启动,还是无法打开,尝试了卸载和重装的方法也没有用.其实,只需下载一个windows search 4.0即可解决.转载于:https://blog.51cto.com/shidilun/1400227

腾讯云存储产品矩阵全面升级,发布三维生态战略
5月10日,腾讯云在北京举行存储产品战略发布会,发布了业界首款十微秒级的极速型云硬盘、业界首款突破百GB 吞吐的文件存储、以及业界首创能够10倍提升数据湖存储分析性能的对象存储三级加速器等新一代云存储产品矩阵。 同时,腾讯云还宣布将围…

围绕云计算 虚拟化技术又呈现新面貌
本文讲的是围绕云计算 虚拟化技术又呈现新面貌,【IT168 资讯】虚拟化技术的三项基本使命-即作为客户端技术,作为服务器技术和作为网络技术,如今正在围绕云计算理念相结合在一起。 起源于X86服务器的虚拟化技术已经快速扩展到存储和网络领域。…

C#字符串处理类
首先介绍一下常用的几个功能: Compare(str1,str2)——比较两个字符串 str1,str2的大小,如果大于返回正数,等于返回0,小于返回负数! IndexOf——定位字符串中第一次出现某个给定字符串的位置PadLeft和PadRight——在字…

linux严谨的telnet搭建并用防火墙开通与禁行
今天本打算练练防火墙iptables的东西,本想拿telnet的23号端口练手,没想到在敲实验的时候遇到了些曲折,经过一番努力,把本次实验过程生成文档。实验环境:rhel5.6及系统盘实验目的:通过iptables对telnet服务2…

孩子、老人与海豚,如何用 AI 伴他们走出孤独
“万里归来颜愈少。微笑。笑时犹带岭梅香。试问岭南应不好。却道。此心安处是吾乡。”苏轼的一首《定风波》道出老人心愿,道出人生百态,也道尽世间炎凉。当你走出万里,无论天涯或是海角,每个人的身上都带着自己独有的印记。这份印…

Linux之 手动释放内存
我们在进程中要怎样去描述一个文件呢?我们用目录项(dentry)和索引节点(inode)。它们的定义如下: 所谓"文件", 就是按一定的形式存储在介质上的信息,所以一个文件其实包含了两方面的信息,一是存储的数据本身,二是有关该文…

C#操作Excel导入导出
前些日子,有很多朋友说需要C#导出到Excel的代码,现共享给大家 /// <summary> /// 读取Excel文档 /// </summary> /// <param name"Path">文件名称</param> /// <returns>返回一个数据集</returns> …

中国安全态势越来越好,专访山石网科CSO蒋东毅 | 拟合
从无序中寻找踪迹,从眼前事探索未来。2021 年正值黄金十年新开端,CSDN 以中立技术社区专业、客观的角度,深度探讨中国前沿 IT 技术演进,推出年度重磅企划栏目——「拟合」,通过对话企业技术高管大咖,跟踪报…

《大数据、小数据、无数据:网络世界的数据学术》一 导读
前 言‖ 在“大数据”风靡的当代,学术研究中的“小数据”依旧不容小觑。随着绝对数据量的增加,学者们进行个体研究的能力却不断退化。因为他们从未距离研究对象如此遥远。新工具和新视角成为学术研究的必需品。但相对于“小数据”而言,“大…

UIView旋转角度
2019独角兽企业重金招聘Python工程师标准>>> 最近做一个视图的旋转、放大、拖动、拉伸,其他的都慢慢解决了,就是旋转之后各种问题不好处理,最终归结到旋转角度的不能获取,纠结了好几天,终于找到了获取旋转角…

生成静态文件的新闻系统核心代码
在网上看了许多能生成静态页的新闻系统,但基于asp.net的系统极少,闲下时间来自己写了一个,发出来,大家一起研究,代码没做什么优化,只是实现了功能 using System;using System.Collections;using System.Com…

「软件」2.0时代已经到来,你需要这样的开发工具
互联网催生了软件的繁荣,而在AI浪潮的推动下,软件正在朝着更「智能」的方向发展,也就是「软件2.0」时代。「软件2.0」其实就是神经网络,也就是这一波AI浪潮的基石。 在「软件1.0」时代,程序员用Java、Python、C等语言…

WF4 Beta,RC版文章总结
Visual Studio 2010明天就要发布正式版了,伴随Visual Studio 2010的发布微软的新一代工作流框架Workflow Foundation 4也会正式发布。从Beta版开始就断断续续的开始关注了,并写了一些文章,今天总结下: WF4 Beta1的几篇文章&#x…

亚马逊云科技在中国区域上线机器学习新服务,打造广泛而深入的人工智能与机器学习工具集
2021年5月11日,在完全托管的机器学习服务Amazon SageMaker落地中国区域一周年之际,亚马逊云科技宣布通过与光环新网和西云数据的紧密合作在中国区域进一步落地多项人工智能与机器学习的新服务和功能,丰富了其针对不同企业需求而打造的人工智能…

mysql ERROR 1045
2019独角兽企业重金招聘Python工程师标准>>> C:\Program Files\MySQL\MySQL Server 5.0\bin> mysql -u root -p Enter password: ERROR 1045 (28000): Access denied for user rootlocalhost (using password: YES) 编辑mysql配置文件my.ini(不知道在…

C#:将另一个应用程序的主窗口移至屏幕最前
2019独角兽企业重金招聘Python工程师标准>>> 使用WindowsAPI函数SwitchToThisWindow,可以将指定窗口移动到屏幕最前。 如果要将另一个应用程序的窗口移动到最前,只需要找到该窗口的句柄,再调用SwitchToThisWindow函数即可。可通过…

阿里技术文档:Redis+Nginx+Spring全家桶+Dubbo精选
最近花了很长的时间去搜罗整理Java核心技术好文,我把每个Java核心技术的优选文章都整理成了一个又一个的文档。今天就把这些东西分享给老铁们,也能为老铁们省去不少麻烦,想学什么技能了,遇到哪方面的问题了 直接打开文档学一学就好…

网页刷新方法集合
代码如下: <input typebutton value刷新 οnclick"history.go(0)"> 代码如下: <input typebutton value刷新 οnclick"location.reload()"> 代码如下: <input typebutton value刷新 οnclick"…

MOS管体二极管的作用
这里有两种解释: 1、mos管本身自带有寄生二极管,作用是防止VDD过压的情况下,烧坏mos管,因为在过压对MOS管造成破坏之前,二极管先反向击穿,将大电流直接到地,从而避免MOS管被烧坏。 2、防止管子的…

Complex Instance Placement
转自: https://specs.openstack.org/openstack/openstack-user-stories/user-stories/proposed/complex-instance-placement.html This work is licensed under a Creative Commons Attribution 3.0 Unported License.http://creativecommons.org/licenses/by/3.0/…