0

0

运维自动化之ansible playbook安装mysql_MySQL

php中文网

php中文网

发布时间:2016-06-01 13:06:54

|

1105人浏览过

|

来源于php中文网

原创

上次介绍了如何使用ansible playbook安装zabbix客户端(http://dl528888.blog.51cto.com/2382721/1436745),这次介绍一下如何使用playbook安装mysql。

下面是安装mysql的信息:

mysql_basedir: /data/mysql/basedir源码目录mysql_datadir: /data/mysql/datadir数据目录mysql_user: mysql mysql用户mysql_database_user: root 数据库用户mysql_passwd: 'E4yR3WnoluSFTCBAI' 数据库密码mysql_port: 3306mysql监听端口mysql_sock: /data/mysql/datadir/mysql.sockmysql的sockmysql_charset: utf8 mysql字符集mysql_collation: utf8_general_cimysql排序方式mysql_version: Percona-Server-5.5.21-rel25.1.tar.gz mysql版本

下面是安装mysql的playbook结构

10:24:06 # tree mysql_*mysql_delete├── files├── handlers├── meta│ └── main.yml├── tasks│ ├── delete.yml│ └── main.yml├── templates└── vars	└── main.ymlmysql_install├── files│ └── mysql.tar.gz├── handlers├── meta│ └── main.yml├── tasks│ ├── copy.yml│ ├── delete.yml│ ├── install.yml│ └── main.yml├── templates│ ├── install_mysql.sh│ ├── my.cnf│ ├── mysqld│ └── mysql_security.sh└── vars	└── main.yml12 directories, 15 files

playbook的mysql安装的是

10:32:06 # cat mysql_install.yml ---- hosts: "{{host}}"remote_user: "{{user}}"gather_facts: Trueroles:- common- mysql_install

playbook的mysql协助的是

10:32:44 # cat mysql_delete.yml ---- hosts: "{{host}}"remote_user: "{{user}}"gather_facts: Trueroles:- mysql_delete

由于在上篇安装zabbix客户端已经介绍了结构,所以现在不介绍了。

10:26:00 #time ansible-playbook mysql_install.yml --extra-vars "host=192.168.240.17 user=root" --private-key=/root/test.pem PLAY [192.168.240.17] ********************************************************* GATHERING FACTS *************************************************************** ok: [192.168.240.17]TASK: [common | Install initializtion require software] *********************** changed: [192.168.240.17]TASK: [mysql_install | Copy Mysql Software To Redhat Client] ****************** changed: [192.168.240.17]TASK: [mysql_install | Create Mysql User In Redhat Client] ******************** changed: [192.168.240.17]TASK: [mysql_install | Copy Mysql Start Script To Redhat Client] ************** changed: [192.168.240.17]TASK: [mysql_install | Copy Install Mysql ScriptTo Redhat Client] *********** changed: [192.168.240.17]TASK: [mysql_install | Copy Mysql Config To Redhat Client] ******************** changed: [192.168.240.17]TASK: [mysql_install | Copy Mysql Security Script To Redhat Client] *********** changed: [192.168.240.17]TASK: [mysql_install | Create Mysql Install Dir] ****************************** ok: [192.168.240.17]TASK: [mysql_install | Uncompression Mysql Software To Redhat Client] ********* changed: [192.168.240.17]TASK: [mysql_install | Modify Mysql Dir Permission In Redhat Client] ********** ok: [192.168.240.17] => (item=/data/mysql/datadir)ok: [192.168.240.17] => (item=/data/mysql/basedir)TASK: [mysql_install | Install Mysql Script In Redhat Client] ***************** changed: [192.168.240.17]TASK: [mysql_install | Start Myql Security Script In Redhat Client] *********** changed: [192.168.240.17]TASK: [mysql_install | Add Boot Start Mysql Service In Redhat Client] ********* changed: [192.168.240.17]TASK: [mysql_install | Delete Mysql compression Software In Redhat Client] **** changed: [192.168.240.17]PLAY RECAP ******************************************************************** 192.168.240.17 : ok=15 changed=12 unreachable=0failed=0 real	2m1.596suser	0m8.815ssys	0m0.848s

2、安装后测试

登陆192.168.240.17的测试机查看mysql安装情况

ShopNC网上商店单用户版
ShopNC网上商店单用户版

ShopNC单用户商城系统是面向独立卖家而开发的B2C商城系统。系统运行稳定高效,功能强大,突出个性化配置要求,可以根据不同的营销策略,从模板、栏目、功能上进行调整,满足各类客户的需要。系统部署快捷方便,减轻了使用者的技术负担,简单的维护操作免去了用户的后顾之忧。本系统前台开放源码,后台加密的。产品特点快速安装,维护简单 分布提示安装,即使不熟悉技术的用户也可以自主安装系统。后台融合数据库等功能管

下载
[root@ip-10-10-240-21 tmp]# lltotal 16lrwxrwxrwx 1 root root30 Jul 13 22:27 mysql.sock -> /data/mysql/datadir/mysql.sock-rw------- 1 root root 256 Jul 10 06:07 tmp.0PLkgCq81n-rw------- 1 root root 197 Jul9 05:35 yum_save_tx-2014-07-09-09-35ibcBiO.yumtx-rw-rw-r-- 1 zabbix zabbix 320 Jul 10 21:39 zabbix_agentd.log-rw-rw-r-- 1 zabbix zabbix 5 Jul 10 21:39 zabbix_agentd.pid[root@ip-10-10-240-21 tmp]# ps -ef|grep mysqlroot 21333 10 22:27 ?00:00:00 /bin/sh /data/mysql/basedir/bin/mysqld_safe --defaults-file=/data/mysql/datadir/my.cnf --datadir=/data/mysql/datadir --pid-file=/data/mysql/datadir/mysql.pidmysql22156 213332 22:27 ?00:00:08 /data/mysql/basedir/bin/mysqld --defaults-file=/data/mysql/datadir/my.cnf --basedir=/data/mysql/basedir --datadir=/data/mysql/datadir --plugin-dir=/data/mysql/basedir/lib/plugin --user=mysql --log-error=/data/mysql/datadir/mysql-error.log --open-files-limit=10240 --pid-file=/data/mysql/datadir/mysql.pid --socket=/data/mysql/datadir/mysql.sock --port=3306root 22440 202330 22:33 pts/000:00:00 grep mysql[root@ip-10-10-240-21 tmp]# ll /data/mysql/total 8drwxr-xr-x 13 mysql mysql 4096 Jun 26 03:59 basedirdrwxr-xr-x4 mysql mysql 4096 Jul 13 22:28 datadir[root@ip-10-10-240-21 tmp]# ll /etc/init.d/mysqld -rwxr-xr-x 1 root root 10905 Jul 13 22:27 /etc/init.d/mysqld[root@ip-10-10-240-21 tmp]# /etc/init.d/mysqld statusMySQL (Percona Server) running (22156) [OK][root@ip-10-10-240-21 tmp]# chkconfig --list|grep mysqlmysqld 	0:off	1:off	2:on	3:on	4:on	5:on	6:off[root@ip-10-10-240-21 tmp]# mysql -h 192.168.240.17 -u root -pE4yR3WnoluSFTCBAIERROR 1045 (28000): Access denied for user 'root'@'192.168.240.17' (using password: YES)[root@ip-10-10-240-21 tmp]# mysql -h 10.10.240.21 -u root -pE4yR3WnoluSFTCBAIWelcome to the MySQL monitor.Commands end with ; or /g.Your MySQL connection id is 8Server version: 5.5.21-log Source distributionCopyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type 'help;' or '/h' for help. Type '/c' to clear the current input statement.mysql> show databases;+--------------------+| Database |+--------------------+| information_schema || mysql|| performance_schema |+--------------------+3 rows in set (0.00 sec)mysql> use mysqlReading table information for completion of table and column namesYou can turn off this feature to get a quicker startup with -ADatabase changedmysql> select host,user,password from user;+--------------+--------+-------------------------------------------+| host | user | password|+--------------+--------+-------------------------------------------+| 10.10.240.21 | root | *BE78618CBAFFF409CE17D81579C1678B94439BE1 || %| zabbix | *DEEF4D7D88CD046ECA02A80393B7780A63E7E789 |+--------------+--------+-------------------------------------------+2 rows in set (0.00 sec)

可以看到已经按照我的要求安装完成,下面在进行删除测试。

3、删除

10:49:18 #time ansible-playbook mysql_delete.yml --extra-vars "host=192.168.240.17 user=root" --private-key=/root/test.pem PLAY [192.168.240.17] ********************************************************* GATHERING FACTS *************************************************************** ok: [192.168.240.17]TASK: [mysql_delete | Stop Mysql Service] ************************************* changed: [192.168.240.17]TASK: [mysql_delete | Delete Mysql Boot Start Script] ************************* changed: [192.168.240.17]TASK: [mysql_delete | Delete Mysql Dir And Socket] **************************** changed: [192.168.240.17]TASK: [mysql_delete | Delete Mysql User] ************************************** changed: [192.168.240.17]TASK: [mysql_delete | Delete Mysql Service Start Script] ********************** changed: [192.168.240.17]PLAY RECAP ******************************************************************** 192.168.240.17 : ok=6changed=5unreachable=0failed=0 real	0m25.248suser	0m0.632ssys	0m0.102s

4、删除后测试

[root@ip-10-10-240-21 tmp]# ll /tmp/total 16-rw------- 1 root root 256 Jul 10 06:07 tmp.0PLkgCq81n-rw------- 1 root root 197 Jul9 05:35 yum_save_tx-2014-07-09-09-35ibcBiO.yumtx-rw-rw-r-- 1 zabbix zabbix 320 Jul 10 21:39 zabbix_agentd.log-rw-rw-r-- 1 zabbix zabbix 5 Jul 10 21:39 zabbix_agentd.pid[root@ip-10-10-240-21 tmp]# ll /data/total 4drwxr-xr-x 3 root root 4096 Jul 10 22:11 webroot[root@ip-10-10-240-21 tmp]# ps -ef|grep mysqlroot 22955 202330 22:50 pts/000:00:00 grep mysql[root@ip-10-10-240-21 tmp]# ll /etc/init.d/mysqlls: cannot access /etc/init.d/mysql: No such file or directory[root@ip-10-10-240-21 tmp]# chkconfig --list|grep mysql[root@ip-10-10-240-21 tmp]#

可以看到都删除完成。

如果大家想使用我的例子,可以从百度云的地址下载(文件大于50M,没办法放到附件或者51下载中心)地址是http://pan.baidu.com/s/1mgG8jY4,然后放到/etc/ansible目录里,下面是压缩包里的内容

11:20:08 # unzip -v mysql_install.zip Archive:mysql_install.zip Length MethodSizeCmprDateTime CRC-32 Name--------------------- ---- ---------- ----- ------------ 113Defl:N 8921% 07-14-2014 10:32 aaed0763mysql_install.yml99Defl:N 8217% 07-14-2014 10:32 70c2a028mysql_delete.yml 0Stored0 0% 07-03-2014 17:29 00000000roles/common/ 0Stored0 0% 06-30-2014 15:58 00000000roles/common/meta/ 267Defl:N17833% 06-30-2014 15:58 31ee20ecroles/common/meta/main.yml 0Stored0 0% 07-11-2014 09:31 00000000roles/common/tasks/ 586Defl:N26854% 07-08-2014 10:18 1c0af2a1roles/common/tasks/main.yml 0Stored0 0% 06-19-2014 13:43 00000000roles/common/handlers/58Defl:N 4817% 06-19-2014 13:43 8d058053roles/common/handlers/main.yml 0Stored0 0% 06-19-2014 13:30 00000000roles/common/vars/ 0Stored0 0% 06-19-2014 13:30 00000000roles/common/templates/ 0Stored0 0% 06-19-2014 13:30 00000000roles/common/files/ 0Stored0 0% 06-24-2014 11:27 00000000roles/mysql_install/ 0Stored0 0% 07-08-2014 14:12 00000000roles/mysql_install/meta/ 198Defl:N14925% 07-08-2014 14:12 b03e00ebroles/mysql_install/meta/main.yml 0Stored0 0% 07-14-2014 09:27 00000000roles/mysql_install/tasks/ 201Defl:N15324% 07-14-2014 09:27 51de730broles/mysql_install/tasks/delete.yml65Defl:N 4137% 07-14-2014 09:27 a3197ca7roles/mysql_install/tasks/main.yml1281Defl:N32974% 07-14-2014 09:27 73d60454roles/mysql_install/tasks/copy.yml1162Defl:N37568% 07-14-2014 09:27 e5a7341croles/mysql_install/tasks/install.yml 0Stored0 0% 06-19-2014 13:30 00000000roles/mysql_install/handlers/ 0Stored0 0% 07-14-2014 09:51 00000000roles/mysql_install/vars/ 313Defl:N17744% 07-14-2014 09:51 bf4476a7roles/mysql_install/vars/main.yml 0Stored0 0% 07-14-2014 11:11 00000000roles/mysql_install/templates/ 518Defl:N24154% 07-14-2014 09:15 529052bfroles/mysql_install/templates/install_mysql.sh 10905Defl:N 376566% 06-26-2014 14:06 e35e7b82roles/mysql_install/templates/mysqld2122Defl:N82361% 07-14-2014 09:49 f91c74abroles/mysql_install/templates/my.cnf 794Defl:N27565% 07-03-2014 13:15 560ee63eroles/mysql_install/templates/mysql_security.sh 0Stored0 0% 06-26-2014 13:59 00000000roles/mysql_install/files/61805835Defl:N 60413846 2% 06-26-2014 16:18 f61e317droles/mysql_install/files/mysql.tar.gz 0Stored0 0% 06-24-2014 11:27 00000000roles/mysql_delete/ 0Stored0 0% 07-08-2014 14:12 00000000roles/mysql_delete/meta/ 197Defl:N14725% 07-08-2014 14:12 fe6b0ef8roles/mysql_delete/meta/main.yml 0Stored0 0% 07-14-2014 09:39 00000000roles/mysql_delete/tasks/ 692Defl:N24565% 07-14-2014 09:39 dccd57b4roles/mysql_delete/tasks/delete.yml22Stored 22 0% 06-27-2014 13:30 728ce4aaroles/mysql_delete/tasks/main.yml 0Stored0 0% 06-19-2014 13:30 00000000roles/mysql_delete/handlers/ 0Stored0 0% 07-03-2014 13:16 00000000roles/mysql_delete/vars/ 313Defl:N17744% 07-14-2014 10:56 bf4476a7roles/mysql_delete/vars/main.yml 0Stored0 0% 06-27-2014 13:30 00000000roles/mysql_delete/templates/ 0Stored0 0% 06-27-2014 13:30 00000000roles/mysql_delete/files/-------------------------61825741 60421430 2%41 files

如果觉得好,给个赞并多评论,谢谢。

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
拼多多赚钱的5种方法 拼多多赚钱的5种方法
拼多多赚钱的5种方法 拼多多赚钱的5种方法

在拼多多上赚钱主要可以通过无货源模式一件代发、精细化运营特色店铺、参与官方高流量活动、利用拼团机制社交裂变,以及成为多多进宝推广员这5种方法实现。核心策略在于通过低成本、高效率的供应链管理与营销,利用平台社交电商红利实现盈利。

28

2026.01.26

edge浏览器怎样设置主页 edge浏览器自定义设置教程
edge浏览器怎样设置主页 edge浏览器自定义设置教程

在Edge浏览器中设置主页,请依次点击右上角“...”图标 > 设置 > 开始、主页和新建标签页。在“Microsoft Edge 启动时”选择“打开以下页面”,点击“添加新页面”并输入网址。若要使用主页按钮,需在“外观”设置中开启“显示主页按钮”并设定网址。

8

2026.01.26

苹果官方查询网站 苹果手机正品激活查询入口
苹果官方查询网站 苹果手机正品激活查询入口

苹果官方查询网站主要通过 checkcoverage.apple.com/cn/zh/ 进行,可用于查询序列号(SN)对应的保修状态、激活日期及技术支持服务。此外,查找丢失设备请使用 iCloud.com/find,购买信息与物流可访问 Apple (中国大陆) 订单状态页面。

31

2026.01.26

npd人格什么意思 npd人格有什么特征
npd人格什么意思 npd人格有什么特征

NPD(Narcissistic Personality Disorder)即自恋型人格障碍,是一种心理健康问题,特点是极度夸大自我重要性、需要过度赞美与关注,同时极度缺乏共情能力,背后常掩藏着低自尊和不安全感,影响人际关系、工作和生活,通常在青少年时期开始显现,需由专业人士诊断。

3

2026.01.26

windows安全中心怎么关闭 windows安全中心怎么执行操作
windows安全中心怎么关闭 windows安全中心怎么执行操作

关闭Windows安全中心(Windows Defender)可通过系统设置暂时关闭,或使用组策略/注册表永久关闭。最简单的方法是:进入设置 > 隐私和安全性 > Windows安全中心 > 病毒和威胁防护 > 管理设置,将实时保护等选项关闭。

5

2026.01.26

2026年春运抢票攻略大全 春运抢票攻略教你三招手【技巧】
2026年春运抢票攻略大全 春运抢票攻略教你三招手【技巧】

铁路12306提供起售时间查询、起售提醒、购票预填、候补购票及误购限时免费退票五项服务,并强调官方渠道唯一性与信息安全。

35

2026.01.26

个人所得税税率表2026 个人所得税率最新税率表
个人所得税税率表2026 个人所得税率最新税率表

以工资薪金所得为例,应纳税额 = 应纳税所得额 × 税率 - 速算扣除数。应纳税所得额 = 月度收入 - 5000 元 - 专项扣除 - 专项附加扣除 - 依法确定的其他扣除。假设某员工月工资 10000 元,专项扣除 1000 元,专项附加扣除 2000 元,当月应纳税所得额为 10000 - 5000 - 1000 - 2000 = 2000 元,对应税率为 3%,速算扣除数为 0,则当月应纳税额为 2000×3% = 60 元。

12

2026.01.26

oppo云服务官网登录入口 oppo云服务登录手机版
oppo云服务官网登录入口 oppo云服务登录手机版

oppo云服务https://cloud.oppo.com/可以在云端安全存储您的照片、视频、联系人、便签等重要数据。当您的手机数据意外丢失或者需要更换手机时,可以随时将这些存储在云端的数据快速恢复到手机中。

40

2026.01.26

抖币充值官方网站 抖币性价比充值链接地址
抖币充值官方网站 抖币性价比充值链接地址

网页端充值步骤:打开浏览器,输入https://www.douyin.com,登录账号;点击右上角头像,选择“钱包”;进入“充值中心”,操作和APP端一致。注意:切勿通过第三方链接、二维码充值,谨防受骗

7

2026.01.26

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号