Home > Database > Mysql Tutorial > body text

使用cgroups来限制MySQL企业备份服务对资源的占用_MySQL

WBOY
Release: 2016-06-01 12:59:13
Original
948 people have browsed it

今天我遇到一个问题,MySQL企业版备份引起I/O子系统负载过大,应用响应缓慢,导致系统不可用。所以我想限制mysqlbackup的进程,使它不会引起更多的问题。

mysqlbackup命令里面有读,写和进程数的设置。默认是1个读,1个写和5个线程。因为我用的是默认设置,所以还是没有必要去调整了。

使用ionice工具没法工作,因为它需要CFG I/O调度器。

我在这篇文章里找到一个方法。 它使用的是linux的cgroups。之前,在三台中有一台服务器使用的是非常慢的CPU的情况下,我使用过cgroups来测试一个galera的安装工作。 
 

# mkdir /cgroup/blkio
# mount -t cgroup -o blkio non /cgroup/blkio
# cgcreate -g blkio:/mysqlbackup
# ls -lh /dev/mapper/vgdb01-lvdb01
lrwxrwxrwx 1 root root 7 Sep 26 14:22 /dev/mapper/vgdb01-lvdb01 -> ../dm-2
# ls -lh /dev/dm-2
brw-rw---- 1 root disk 253, 2 Sep 26 14:22 /dev/dm-2
# cgset -r blkio.throttle.read_iops_device="253:2 20" mysqlbackup
# cgset -r blkio.throttle.write_iops_device="253:2 20" mysqlbackup
# echo $$ > /cgroup/blkio/mysqlbackup/tasks
# cat /proc/$$/cgroup
1:blkio:/mysqlbackup
# mysqlbackup --user=root --password=xxxxxx --with-timestamp --backup-dir=/data/backup backup
Copy after login

和我期待的完全一样,这种方式工作的很好。读和写操作都被限制在 20 iops.

后来发现是存储系统的问题,所以我没有在生产环境使用这种方法,但是我希望这会帮上其他人忙。或许在其他问题下也是有用的。

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!