运维需求见表:

主机IP 部署服务 说明
192.168.21.66 Ansible

basedir:/opt/mysql

datadir:/opt/mysql/data

binlog:/opt/mysql/log/

errorlog:/opt/mysql/log/error.log

socket:/opt/mysql/mysqld.sock

tmp:/opt/mysql/tmp

mysql运行用户:jiangwei

端口:3306

操作系统:Ubuntu 16.04

MySQL版本:5.7

192.168.21.70 MySQL

关联文档:

  • https://www.cnblogs.com/WSQL/p/9963342.html
  • https://www.cnblogs.com/WSQL/p/9963243.html

1.前置条件:

  • 安装依赖包:apt-get  install numactl  gcc  make  libaio  libaio-dev
  • 创建jiangwei运行用户
  • 192.168.21.66能够用root免密登录到192.168.21.70主机上

2./opt/ansible/mysql目录结构如下:

mysql
├── files
│ ├── my.cnf
│ ├── mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz
│ └── setpassword.sh
└── tasks
└── main.yml

其中 mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz为安装包,可到MySQL官网下载。

1.1)main.yml文件:

- name: unarchive Mysql
unarchive: src=mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz dest=/usr/local/ owner=jiangwei group=jiangwei
- name: mkdir mysql datadir
file: path=/opt/mysql/data owner=jiangwei group=jiangwei state=directory
- name: mkdir mysql log dir
file: path=/opt/mysql/log owner=jiangwei group=jiangwei state=directory

- name: mkdir mysql tmp dir
file: path=/opt/mysql/tmp owner=jiangwei group=jiangwei state=directory
- name: change directory
command: mv /usr/local/mysql-5.7.24-linux-glibc2.12-x86_64 /usr/local/mysql
#- name: init.d mysql file
# command: cp /usr/local/mysql/support-files/mysql.server /etc/init.d/
- name: cp my.cnf
copy: src=my.cnf dest=/etc/my.cnf
- name: initid mysql-server
command: /usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --initialize --user=jiangwei
- name: start mysql
command: /usr/local/mysql/support-files/mysql.server start
- name: set password
copy: src=setpassword.sh dest=/opt/mysql/ mode=755
- name: sh setpassword
shell: sh /opt/mysql/setpassword.sh
- name: mysql binary command
command: cp /usr/local/mysql/bin/* /usr/bin/

1.2) my.cnf文件内容:

[mysqld_safe]
socket = /opt/mysql/mysqld.sock
nice = 0

[mysqld]
server-id = 70
event_scheduler = 1
character-set-server = utf8
bind-address = 0.0.0.0
symbolic-links = 0
max_allowed_packet = 40M
user = rocky
pid-file = /opt/mysql/mysqld.pid
socket = /opt/mysql/mysqld.sock
port = 3306
basedir = /usr/local/mysql
datadir = /opt/mysql/data
tmpdir = /opt/mysql/tmp
skip-external-locking

key_buffer_size = 16M
thread_stack = 192K
thread_cache_size = 8

max_connections = 1000

query_cache_limit = 1M
query_cache_size = 16M

log_error = /opt/mysql/log/error.log
log-bin = /opt/mysql/log/mysql-bin
expire_logs_days = 10
max_binlog_size = 100M

[client]
default-character-set = utf8

1.3) setpassword.sh的内容如下:

#该脚本仅限第一次修改初始密码使用
mysqlinitpasswd=`grep "password is generated" /opt/mysql/log/error.log | awk '{print $NF}'`
mysql -uroot -p${mysqlinitpasswd} -S /opt/mysql/mysqld.sock -e "alter user 'root'@'localhost' identified by 'jiangwei';grant all on *.* to 'root'@'%'identified by 'jiangwei';flush privileges" --connect-expired-password

3.配置所要安装mysql的主机列表,vi /etc/ansible/hosts,内容如下:

[mysql]
192.168.21.70

[mysql:vars]
ansible_python_interpreter=/usr/bin/python3
ansible_ssh_user=root

4.mysqlinstall.yml文件内容如下:

- hosts: mysql
roles:
     - mysql

5.ansible-playbook执行安装,命令:ansible-playbook   /opt/ansible/mysqlinstall.yml

6.验证mysql服务,可登陆认证:mysql -uroot -pjiangwei  -S /opt/mysql/mysqld.sock

转载于:https://www.cnblogs.com/WSQL/p/9963330.html

Ansible安装MySQL5.7.24相关推荐

  1. ubuntu mysql 5.7.19_在Ubuntu19下安装Mysql-5.7.24

    在Ubuntu19下安装Mysql-5.7.24 这个教程是在Ubuntu19安装Mysql的过程,参考了简书开心挑骚老哥Centos安装Mysql的教程(https://www.jianshu.co ...

  2. linux mysql 5.6.24_Mysql实例Linux安装MySQL5.6.24使用文字说明

    <Mysql实例Linux安装MySQL5.6.24使用文字说明>要点: 本文介绍了Mysql实例Linux安装MySQL5.6.24使用文字说明,希望对您有用.如果有疑问,可以联系我们. ...

  3. centos 编译安装 mysql_CentOS7编译安装MySQL5.7.24的教程详解

    安装依赖 (1)cmake是新版MySQL的编译工具 sudo yum install gcc gcc-c++ pcre pcre-devel openssl openssl-devel sudo y ...

  4. 安装mysql 5.6.24给linux,Red Hat Enterprise Linux 5 64位安装Mysql5.6.24(DB5.6.24.rpm for rhel5 x86)...

    第一步:查找以前是否装有mysql 命令:rpm -qa|grep -i mysql 结果:如果有结果代表当前系统已经安装mysql的旧版本,没有结果则没有,请跳过第二步 例如:有结果的: 第二步:删 ...

  5. mysql-5.7.24 linux下载_Linux下安装mysql-5.7.24

    本文档讲解安装版本为mysql-5.7.24,对于5.7.24之后的版本,不适用此说明文档,主要原因在于之后版本的mysql配置文件的目录位置和结构有所改变,使用此说明可能会出现找不到配置文件或者配置 ...

  6. mysql-5.7.24-linux_Linux下安装mysql-5.7.24

    Mysql-8.0.19 版本的安装说明请移步:Linux下安装mysql-8.0.19 Mysql数据库的安装对于开发者来说,是我们必然会面对的问题,它的安装过程其实并不复杂,并且网络上的安装教程也 ...

  7. centos 7 mysql界面管理器_centos7安装mysql5.7.24,并使用system管理mysql

    1.创建安装目录 mkdir /mysql 2.进入安装目录 cd /data 3.下载5.7.24的tar包 wget https://downloads.mysql.com/archives/ge ...

  8. windows上安装mysql5.7.24

    平时自己做测试的时候,自己安装一个mysql还是很有必要的,网上教程很多,但是自己操作过程中还是遇到了一些问题,这里记录一下安装过程. 一.下载mysql https://downloads.mysq ...

  9. CentOS7下安装mysql-5.7.24

    文章目录 一:安装前期准备 1.检查是否已经安装过mysql 2.查询所有mysql对应的文件夹 3.下载linux版本的mysql安装包 二:安装mysql 1.解压文件 2.将解压后的文件重新命名 ...

最新文章

  1. 服务器运行环境怎么搭建,服务器运行环境怎么快速搭建?
  2. 字节跳动面试官问我看过哪些源码,然后就没有然后了
  3. Python函数篇(5)-装饰器及实例讲解
  4. 【项目实战课】基于Pytorch的3DCNN视频分类与行为识别实战
  5. 计算机主机内置的地址码被称为,2016年职称计算机考试WPS_Office单选练习试题1
  6. Extjs4 radiogroup打开时的被选中值设置为变量
  7. 13c语言中的文件是一种流式文件,读写时均以字符为单位.,C语言判断题部分.doc...
  8. SSL自签名的实现类org apache commons httpclient contrib ssl EasySSLP
  9. 面试题:谈谈如何优化MYSQL数据库查询
  10. POJ 2989 All Friends
  11. 《大电机技术》期刊简介
  12. cad角度怎么画_女孩都喜欢的公主抱怎么画?各种不同角度公主抱漫画素材绘画教程...
  13. C# Dictionary多线程安全访问问题
  14. 随着新时代的5G来临,中国半导体行业落后,中国看到了以AI芯片取代美国的机会
  15. OPC UA协议网关
  16. 电脑双系统顺序的切换方法
  17. 个人办公效率便签工具
  18. 清理完c盘计算机无法重启,电脑的c盘被清理,随后就关机后,在打开,就打不开了,...
  19. Spring框架编译报could not resolve plugin artifact io.spring.dependency-management
  20. 计算机网络知识点总结 (一)

热门文章

  1. 计算机应用基础形成性考核作业,计算机应用基础形成性考核作业1
  2. c++ windows编译器 amd平台_不同操作系统下的C/C++ 编译器,C/C++新手须知,零基础学习C语言...
  3. 网卡流量监控工具vnstat的使用
  4. mybatis 取查询值_Oracle结合Mybatis实现取表TOP 10条数据
  5. cad lisp 两侧偏移并删除_CAD做钣金件展开的原理你知道吗?
  6. 【clickhouse】clickhouse源码 Distributed之表select流程
  7. 【正则表达式】sql语句去掉注释代码
  8. Maven : maven工程libraries没有maven dependencies
  9. 【Linux】Linux测试磁盘 IO 性能
  10. 10-300-020-简介-架构-简介