So far the most widely used tool to make hot backups of MySQL has been mysqldump. However, it has several important limitation, and people at Percona have started work on an alternative. It reached version 0.5, and while it is not considered stable yet, it's quite usable. It would be nice to have a Gentoo ebuild for it. Thanks!
I'd love to see this too. Recent versions got more and more stable and its soo useful for hot backups!
Xtrabackup v1.0 has been released http://www.mysqlperformanceblog.com/2009/12/09/xtrabackup-1-0/
Created attachment 218923 [details] ebuild for xtrabackup 1.0
Created attachment 234843 [details] Bump dev-db/xtrabackup to 1.2.15 Ebuild for dev-db/xtrabackup-1.2.15 Tested on x86 and amd64 Just copy and change name for a new release
This ebuild was added to repo: http://github.com/GiDiS/gentoo-php-rewrite
Created attachment 271995 [details] xtrabackup-bin-1.6.ebuild I have adjusted the ebuild for XtraBackup 1.6: added dependency on dev-libs/libaio and fixed dobin/dosymlink.
Created attachment 310493 [details] Updated dev-db/xtrabackup 2.0.0 ebuild This is yet another update to the ebuild for the latest available version. The download locations have changed, and some of the included files too.
I've added an updated ebuild to my overlay here (dev-db/percona-xtrabackup-bin): http://anon-git.one-gear.com/?p=chaos.git;a=summary It properly supports the different arches, and has some cleaned up deps. Additionally I have dev-db/percona-server-bin in there including the latest cluster build in case anyone is interested. Thanks!
Here is an ebuild for Percona Xtrabackup 2.0.1 that is built from the source.
Created attachment 319980 [details] percona-xtrabackup-2.0.1.ebuild
percona-xtrabackup-2.0.1.ebuild still needs a tweak, as it downloads a webpage not the package source: gzip: /var/tmp/portage/dev-db/xtrabackup-2.0.1/distdir/xtrabackup-2.0.1.tar.gz: not in gzip format db5 xtrabackup # head /var/tmp/portage/dev-db/xtrabackup-2.0.1/distdir/xtrabackup-2.0.1.tar.gz <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd">
Please ignore comment #11, I didn't realize that the package name was changed to "percona-xtrabackup".
(In reply to comment #10) > Created attachment 319980 [details] > percona-xtrabackup-2.0.1.ebuild Rename percona-xtrabackup-2.0.1.ebuild to percona-xtrabackup-2.0.4.ebuild for Xtrabackup 2.0.4.
(In reply to comment #10) > Created attachment 319980 [details] > percona-xtrabackup-2.0.1.ebuild Rename percona-xtrabackup-2.0.1.ebuild to percona-xtrabackup-2.0.5.ebuild for Xtrabackup 2.0.5.
(In reply to comment #10) > Created attachment 319980 [details] > percona-xtrabackup-2.0.1.ebuild Rename percona-xtrabackup-2.0.1.ebuild to percona-xtrabackup-2.0.6.ebuild for Xtrabackup 2.0.6.
Created attachment 347120 [details] percona-xtrabackup-2.0.6.ebuild Updated ebuild (added MySQL5.0 /MySQL 5.6)
Created attachment 347122 [details] percona-xtrabackup-2.0.6.ebuild Added dependency on automake for MySQL 5.0.
Created attachment 350938 [details] percona-xtrabackup-2.1.3.ebuild Added dependency on dev-perl/DBD-mysql.
Created attachment 350940 [details] percona-xtrabackup-2.1.3.ebuild Percona removed support for MySQL 5.0/MySQL 5.1 (innodb builtin).
Created attachment 350942 [details] percona-xtrabackup-2.0.7.ebuild Latest version from 2.0, can be used for MySQL 5.0/MySQL 5.1.
(In reply to Tomas Mozes from comment #18) > Created attachment 350938 [details] > percona-xtrabackup-2.1.3.ebuild > > Added dependency on dev-perl/DBD-mysql. Here are some suggestions: Replace pkg_setup() with REQUIRED_USE="^^ ( mysql50 mysql51 mysql51plugin mysql55 mysql56 percona51 percona55 )" and put the USE descriptions in metadata.xml. You also need RDEPEND as EAPI 4 does not set it implicitly. RDEPEND="dev-libs/libaio dev-perl/DBD-mysql percona51? ( dev-vcs/bzr ) percona55? ( dev-vcs/bzr )" DEPEND="${RDEPEND} dev-util/cmake mysql50? ( sys-devel/automake:1.10 ) mysql51? ( sys-devel/automake:1.10 ) mysql51plugin? ( sys-devel/automake:1.10 ) percona51? ( sys-devel/automake:1.10 )" BTW, you list MariaDB 5.1, 5.2, 5.3 and 10.0. Where did MariaDB 5.5 go? On top of all of this, the current build script from upstream does not seem fit well with Gentoo. It builds a custom downloaded, sometimes from bzr, MySQL/Percona server for the purpose of building a plugin and the xtrabackup binary. The plugin should be proposed as a patch for the server build itself. Then, this binary should try to interpret the binary only build procedure. Although, this may not be possible since the binary looks to need the server sources as well! Not sure the best way to handle it since the server sources are not normally available. Possibly the only way that I can see to get this to work in Gentoo, is to have xtrabackup as an add-on to the server build process.
dev-db/xtrabackup-bin is already in the tree. @mysql-bugs With the attachment to the server build that this build would entail, do we want to carry the source version as well?
I would like to add a ebuild for the source version as well but the auto-download stuff is a no-go. Also, the last time when I tried it it required some patches to MySQL. For now I'd just use the pre-built binary package.
Created attachment 436970 [details] percona-xtrabackup-2.4.3.ebuild The building is now self-contained, nothing additional should be downloaded from the network. First draft, needs to further check the boost requirement of the specific version. Any testing is appreciated.
Created attachment 437056 [details] percona-xtrabackup-2.4.3.ebuild Rebuild on libgcrypt slot change.
Created attachment 437058 [details] percona-xtrabackup-2.4.3.ebuild Cannot be installed along with xtrabackup-bin.
Created attachment 437344 [details] percona-xtrabackup-2.4.3.ebuild My $0.02 from #585366. Ebuild that does not depend on boost but downloads sources instead. They are needed only for compilation. Locking into specific boost version will be hell to maintain. And I'm guessing by the time upstream fixes compatibility with 1.60/1.61 we will have newer, incompatible version.
(In reply to manwe from comment #27) > Created attachment 437344 [details] > percona-xtrabackup-2.4.3.ebuild > > My $0.02 from #585366. Ebuild that does not depend on boost but downloads > sources instead. They are needed only for compilation. > > Locking into specific boost version will be hell to maintain. And I'm > guessing by the time upstream fixes compatibility with 1.60/1.61 we will > have newer, incompatible version. Thanks. It really seems Boost 1.59 is a hard requirement for now and probably will be for some time: http://forums.mysql.com/read.php?117,645928,645982#msg-645982 I suppose we could add a USE flag to trigger system/downloaded boost, what do you think?
That's an option, good idea. But IMO by default it should be non-system. Downgrading boost to 1.59 might force rebuild on many packages and lock other that some day will depend on boost >=1.60.
By the way, I'm already using this package, compiled with my ebuild, and I can confirm it works nicely with Percona XtraDB Cluster (maybe some day cluster will also find its way into portage tree).
I too can confirm it's working with MariaDB 10.0. I tried to run a consistency check and it passed just fine. I'll try to merge our ebuilds together, hopefully we can add it to portage then.
Created attachment 438678 [details] percona-xtrabackup-2.4.3.ebuild Selectable system boost, which is on by default (the Gentoo way).
I'm on my cellphone right now, but looks like you forgot about tar --extract.
(In reply to manwe from comment #33) > I'm on my cellphone right now, but looks like you forgot about tar --extract. The SRC_URI files are automatically unpacked.
https://github.com/gentoo/gentoo/pull/1998 @manwe, would you like to co-maintain?
Sure, will do my best.
commit 9f553b1a4dffb76fc3fd8b1f67498559b666d091 (HEAD -> master, origin/master, origin/HEAD) Author: Tomas Mozes <hydrapolic@gmail.com> AuthorDate: Tue Aug 2 13:32:58 2016 +0200 Commit: Patrice Clement <monsieurp@gentoo.org> CommitDate: Wed Aug 3 14:00:28 2016 +0200 dev-db/percona-xtrabackup: New package. Percona XtraBackup is an online non-blocking backup tool for MySQL, MariaDB and Percona Server. Gentoo-Bug: https://bugs.gentoo.org/265407 Package-Manager: portage-2.3.0 Closes: https://github.com/gentoo/gentoo/pull/1998 Signed-off-by: Patrice Clement <monsieurp@gentoo.org> dev-db/percona-xtrabackup/Manifest | 2 + dev-db/percona-xtrabackup/metadata.xml | 19 ++++++++ .../percona-xtrabackup-2.4.4.ebuild | 52 ++++++++++++++++++++++ 3 files changed, 73 insertions(+) create mode 100644 dev-db/percona-xtrabackup/Manifest create mode 100644 dev-db/percona-xtrabackup/metadata.xml create mode 100644 dev-db/percona-xtrabackup/percona-xtrabackup-2.4.4.ebuild Commited, thanks!
Thank you Patrice.