本节脚本的使用前提是将mysql(多实例)加入systemctl管理。
#!/bin/sh
# Do NOT modify this file by hand!
# Generate by ansible
echo "Show all mysql status: mysqld_multi --defaults-extra-file=/etc/mysql/3306.cnf report"
echo "Start mysql: systemctl start mysqld@3306"
echo "Stop mysql: systemctl stop mysqld@3306"
echo "Status mysql: systemctl status mysqld@3306"
mysql -u root -phlaghhioweh -S /home/mysql/mysql.sock $@
[Unit]
Description=MySQL Percona Server
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
Alias=mysql.service
[Service]
User=mysql
Group=mysql
# Needed to create system tables etc.
ExecStartPre=/usr/bin/mysql-systemd pre
# Start main service
ExecStart=/usr/bin/mysqld_safe
# Don't signal startup success before a ping works
ExecStartPost=/usr/bin/mysql-systemd post
# Disable service start and stop timeout logic of systemd for mysqld service.
TimeoutSec=0
# Sets open_files_limit
LimitNOFILE = 5000
Restart=on-failure
RestartPreventExitStatus=1
#!/bin/sh
#数据库迁移
# Ansible managed: /data/home/workspace/cy_ansible/roles/mysql_multi_server/templates/rebuild_database.sh.j2 modified on 2017-01-17 18:36:17 by chuyun_sys on control
# Do NOT modify this file by hand!
if [ "$1" != "Tooh_chuyun_321" ]; then
echo Password error
echo 'Usage:sh rebuild_database.sh Tooh_chuyun_798'
exit 1
fi
echo Stop local mysqld@3306
systemctl stop mysqld@3306
echo Delete /home/mysql/3306/data
rm -fr /home/mysql/3306/data
echo Rebuild mysqld@3306 database
mysql_install_db --defaults-extra-file=/etc/mysql/3306.cnf --user=mysql --datadir=/home/mysql/3306/data
echo Start mysqld@3306
systemctl start mysqld@3306
echo "Wait mysqld@3306 started"
mysqladmin --defaults-extra-file=/etc/mysql/3306.cnf -uroot password 'Tooh_chuyun_798' --socket=/home/mysql/3306/mysql.sock --wait=30
(adsbygoogle = window.adsbygoogle || []).push({});