我们现在有一个可以管理常见项目的Ansible Playbook。 它可以安装和配置Nginx,最后也可以安装和配置Tomcat。 下一个合乎逻辑的步骤是安装某种形式的数据存储,为此,我们将看看MySQL。
由于其相对易用性和开源传统,MySQL可以说是最受欢迎的数据库之一。 MySQL对于大小网站都足够强大,并为互联网上许多最受欢迎的网站提供支持。 虽然它可能缺少一些企业功能,它们是比较昂贵的堂兄弟,例如Oracle和Microsoft SQL,但它可以通过相对简单的安装和无需许可证成本进行扩展来弥补这一点。
对于此配方,您需要一个Ubuntu 14.04服务器作为您的Ansible客户端,以及一个您希望为MySQL配置的Ubuntu 14.04服务器。
让我们使用Ansible安装MySQL:
您可以在http://docs.ansible.com/ansible/playbooks_variables.html#information-discovered-from-systems-facts找到有关Ansible事实的更多详细信息。
See also
useradd mysql -s /sbin/nologin -M
cd /server/tools/
tar xf mysql-5.7.26-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.7.26-linux-glibc2.12-x86_64 /application/mysql-5.7.26
ln -s /application/mysql-5.7.26/ /application/mysql
rpm -e --nodeps mariadb-libs
vim /etc/my.cnf
rpm -qa mariadb-libs
yum install libaio-devel -y
mkdir -p /application/mysql/data
chown -R mysql.mysql /application/mysql/
/application/mysql/bin/mysqld --initialize-insecure --user=mysql --basedir=/application/mysql/ --datadir=/application/mysql/data
echo "[Unit]
Description=MySQL Server by oldboy
Documentation=man:mysqld(8)
Documentation= http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/application/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = 5000" >/etc/systemd/system/mysqld.service
systemctl start mysqld
systemctl enable mysqld
systemctl status mysqld
netstat -lntup|grep mysql
ps -ef|grep mysql|grep -v grep
echo 'export PATH=/application/mysql/bin: PATH
mysqladmin -u root password '123456'
mysql -uroot -p123456
mysql
使用场景:
ansible mysql -i mysql_hosts -S -R admin -m shell -a 'ps -ef | grep 3306 |grep - v grep |awk "{print \$2}" |xargs kill -9 '
如上命令为 批量kill所有主机的MySQL的服务
-i 代表使用那个hosts文件,默认的在/etc/ansible/hosts
mysql_hosts文件如下:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)