Announcement

Announcement Module
Collapse
No announcement yet.

It's possible to compile xtrabackup for MySQL 5.5.9?

Page Title Module
Move Remove Collapse
X
Conversation Detail Module
Collapse
  • Filter
  • Time
  • Show
Clear All
new posts

  • It's possible to compile xtrabackup for MySQL 5.5.9?

    I'm seeing in the source code, in utils/build.sh, that xtrabackup it's ready to building for MySQL 5.5.8. I'm traying to compile for 5.5.9, but I get an error when the patch it's applied.

    There are patches ready to 5.5.9 version (or comming soon) or have I to change it manually?


    $ bzr branch lpercona-xtrabackup

    percona-xtrabackup$ vi utils/build.sh
    replace mysql_version=5.5.8 by mysql_version=5.5.9

    percona-xtrabackup$ wget ftp://ftp.gwdg.de/pub/misc/mysql/Downloads/MySQL-5.5/mysql-5 .5.9.tar.gz

    percona-xtrabackup$ utils/build.sh 5.5
    --2011-03-11 13:04:49-- http://www.percona.com/downloads/community//libtar-1.2.11.ta r.gz
    Resolviendo www.percona.com... 65.49.72.130
    Connecting to www.percona.com|65.49.72.130|:80... conectado.
    Petición HTTP enviada, esperando respuesta... 200 OK
    Longitud: 145354 (142K) [application/x-gzip]
    Saving to: `libtar-1.2.11.tar.gz'

    100%[================================================== ===== ================================================== ========== >] 145.354 143K/s in 1,0s

    2011-03-11 13:04:51 (143 KB/s) - `libtar-1.2.11.tar.gz' saved [145354/145354]

    Prepare sources
    patching file storage/innobase/btr/btr0btr.c
    patching file storage/innobase/buf/buf0buf.c
    Hunk #2 succeeded at 4056 (offset 1 line).
    patching file storage/innobase/buf/buf0rea.c
    patching file storage/innobase/fil/fil0fil.c
    Hunk #2 succeeded at 299 with fuzz 2.
    Hunk #3 succeeded at 338 (offset 28 lines).
    Hunk #4 succeeded at 663 (offset 28 lines).
    Hunk #5 succeeded at 698 (offset 28 lines).
    Hunk #6 succeeded at 795 (offset 28 lines).
    Hunk #7 succeeded at 847 (offset 28 lines).
    Hunk #8 succeeded at 1474 (offset 28 lines).
    Hunk #9 succeeded at 1531 (offset 28 lines).
    Hunk #10 succeeded at 2201 (offset 28 lines).
    Hunk #11 succeeded at 2364 (offset 28 lines).
    Hunk #12 succeeded at 2665 (offset 28 lines).
    Hunk #13 succeeded at 2856 (offset 28 lines).
    Hunk #14 succeeded at 3111 (offset 28 lines).
    Hunk #15 succeeded at 3433 (offset 28 lines).
    Hunk #16 succeeded at 3574 (offset 28 lines).
    Hunk #17 succeeded at 3873 (offset 28 lines).
    Hunk #18 succeeded at 4352 (offset 28 lines).
    Hunk #19 succeeded at 4372 (offset 28 lines).
    Hunk #20 succeeded at 4391 (offset 28 lines).
    Hunk #21 succeeded at 4577 (offset 28 lines).
    patching file storage/innobase/ibuf/ibuf0ibuf.c
    Hunk #1 succeeded at 1160 with fuzz 2 (offset 35 lines).
    Hunk #2 succeeded at 2694 (offset 78 lines).
    patching file storage/innobase/include/srv0srv.h
    patching file storage/innobase/include/srv0start.h
    patching file storage/innobase/log/log0log.c
    patching file storage/innobase/log/log0recv.c
    patching file storage/innobase/os/os0file.c
    Hunk #1 succeeded at 656 (offset 25 lines).
    Hunk #2 succeeded at 1456 (offset 25 lines).
    Hunk #3 succeeded at 1517 (offset 25 lines).
    Hunk #4 succeeded at 2699 (offset 25 lines).
    Hunk #5 succeeded at 2826 (offset 25 lines).
    patching file storage/innobase/os/os0thread.c
    patching file storage/innobase/row/row0merge.c
    patching file storage/innobase/srv/srv0srv.c
    Hunk #1 succeeded at 396 (offset 2 lines).
    Hunk #2 succeeded at 1097 (offset 34 lines).
    Hunk #3 succeeded at 1108 (offset 34 lines).
    Hunk #4 succeeded at 1122 (offset 34 lines).
    Hunk #5 succeeded at 1718 (offset 34 lines).
    patching file storage/innobase/srv/srv0start.c
    Hunk #4 FAILED at 1381.
    Hunk #5 succeeded at 1708 (offset 76 lines).
    Hunk #6 FAILED at 1807.
    Hunk #7 succeeded at 1950 (offset 118 lines).
    Hunk #8 succeeded at 2063 (offset 135 lines).
    2 out of 8 hunks FAILED -- saving rejects to file storage/innobase/srv/srv0start.c.rej

  • #2
    Compile against 5.5.8, and it should work fine for backing up 5.5.9 as well. But the patches are not made to apply against 5.5.9.

    Comment


    • #3
      OK, thanks.

      I'm trying to compile against MySQL 5.5.8. Everything looks OK with utils/build.sh, and it generates xtrabackup_55 and innobackupex-1.5.1 script, but I don't know how I should proceed to integrate with an installation of MySQL 5.5.8.

      I'm following http://www.percona.com/docs/wiki/percona-xtrabackup:installa tion:from-source, but not indicate how upgrade my xtrabackup.

      In the past I have installed xtrabackup-1.5-9.rhel5.x86_64.rpm and now, I copy:

      ./mysql-5.5.8/storage/innobase/xtrabackup/xtrabackup_55
      ./mysql-5.5.8/storage/innobase/xtrabackup/innobackupex-1.5.1
      ./mysql-5.5.8/libtar-1.2.11/libtar/tar4ibd

      to a /usr/bin. But when I execute a full backup, I get this error. What's I'm doing wrong? What's the correct procedure to upgrade xtrabackup?

      [root@rh5 mysql-5.5.8]# /usr/bin/innobackupex-1.5.1 /var/scada/backups/mysql/full

      InnoDB Backup Utility v1.5.1-xtrabackup; Copyright 2003, 2009 Innobase Oy.
      All Rights Reserved.

      This software is published under
      the GNU GENERAL PUBLIC LICENSE Version 2, June 1991.

      110314 21:29:34 innobackupex-1.5.1: Starting mysql with options: --unbuffered --
      110314 21:29:34 innobackupex-1.5.1: Connected to database with mysql child process (pid=18368)
      110314 21:29:40 innobackupex-1.5.1: Connection to database server closed
      IMPORTANT: Please check that the backup run completes successfully.
      At the end of a successful backup run innobackupex-1.5.1
      prints "completed OK!".

      innobackupex-1.5.1: Using mysql Ver 14.14 Distrib 5.5.8, for Linux (x86_64) using EditLine wrapper
      innobackupex-1.5.1: Using mysql server version Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.

      innobackupex-1.5.1: Created backup directory /var/scada/backups/mysql/full/2011-03-14_21-29-40
      110314 21:29:40 innobackupex-1.5.1: Starting mysql with options: --unbuffered --
      110314 21:29:40 innobackupex-1.5.1: Connected to database with mysql child process (pid=18415)
      110314 21:29:44 innobackupex-1.5.1: Connection to database server closed

      110314 21:29:44 innobackupex-1.5.1: Starting ibbackup with command: xtrabackup_55 --backup --suspend-at-end --target-dir=/var/scada/backups/mysql/full/2011-03-14_21-29- 40
      innobackupex-1.5.1: Waiting for ibbackup (pid=18428) to suspend
      innobackupex-1.5.1: Suspend file '/var/scada/backups/mysql/full/2011-03-14_21-29-40/xtrabacku p_suspended'

      xtrabackup_55 Ver undefined Rev undefined for 5.5.8 Linux (x86_64)
      xtrabackup: uses posix_fadvise().
      xtrabackup: cd to /var/lib/mysql
      xtrabackup: Target instance is assumed as followings.
      xtrabackup: innodb_data_home_dir = /var/lib/mysql
      xtrabackup: innodb_data_file_path = ibdata1:10M:autoextend
      xtrabackup: innodb_log_group_home_dir = ./
      xtrabackup: innodb_log_files_in_group = 2
      xtrabackup: innodb_log_file_size = 5242880
      innobackupex-1.5.1: Error: ibbackup child process has died at /usr/bin/innobackupex-1.5.1 line 562.

      With a clean database I get the same error. I only have a database created with scripts/mysql_install_db --user=mysql

      mysql> show databases;
      +--------------------+
      | Database |
      +--------------------+
      | information_schema |
      | mysql |
      | performance_schema |
      | test |
      +--------------------+

      [root@rh5 mysql-5.5.8]# ls -l /var/lib/mysql
      total 28740
      -rw-rw---- 1 mysql mysql 18874368 Mar 14 21:29 ibdata1
      -rw-rw---- 1 mysql mysql 5242880 Mar 14 21:29 ib_logfile0
      -rw-rw---- 1 mysql mysql 5242880 Mar 14 21:28 ib_logfile1
      drwx------ 2 mysql root 4096 Mar 14 21:29 mysql
      srwxrwxrwx 1 mysql mysql 0 Mar 14 21:29 mysql.sock
      drwx------ 2 mysql mysql 4096 Mar 14 21:29 performance_schema
      -rw-rw---- 1 mysql root 3076 Mar 14 21:29 rh5.5-64.err
      -rw-rw---- 1 mysql mysql 6 Mar 14 21:29 rh5.5-64.pid
      drwx------ 2 mysql root 4096 Mar 14 21:29 test

      Comment


      • #4
        More details. With: perl -d:Trace /usr/bin/innobackupex-1.5.1 /var/scada/backups/mysql/full

        ...
        110314 21:54:10 innobackupex-1.5.1: Starting ibbackup with command: xtrabackup_55 --backup --suspend-at-end --target-dir=/var/scada/backups/mysql/full/2011-03-14_21-54- 06
        >> /usr/bin/innobackupex-1.5.1:1010: if (defined($pid = fork)) {
        >> /usr/bin/innobackupex-1.5.1:1011: if ($pid) {
        >> /usr/bin/innobackupex-1.5.1:1153: if($option_remote_host || $option_stream) {
        >> /usr/bin/innobackupex-1.5.1:1159: exec($cmdline) || Die "Failed to exec ibbackup: $!";
        >> /usr/bin/innobackupex-1.5.1:1011: if ($pid) {
        >> /usr/bin/innobackupex-1.5.1:1013: $ibbackup_pid = $pid;
        >> /usr/bin/innobackupex-1.5.1:1015: if($option_remote_host || $option_stream) {
        >> /usr/bin/innobackupex-1.5.1:584: if (!$option_remote_host && !$option_stream) {
        >> /usr/bin/innobackupex-1.5.1:585: wait_for_ibbackup_suspend();
        >> /usr/bin/innobackupex-1.5.1:917: print STDERR "$prefix Waiting for ibbackup (pid=$ibbackup_pid) to suspend\n";
        innobackupex-1.5.1: Waiting for ibbackup (pid=19613) to suspend
        >> /usr/bin/innobackupex-1.5.1:918: print STDERR "$prefix Suspend file '$suspend_file'\n\n";
        innobackupex-1.5.1: Suspend file '/var/scada/backups/mysql/full/2011-03-14_21-54-06/xtrabacku p_suspended'

        >> /usr/bin/innobackupex-1.5.1:919: for (; {
        >> /usr/bin/innobackupex-1.5.1:920: sleep 2;
        xtrabackup_55 Ver undefined Rev undefined for 5.5.8 Linux (x86_64)
        xtrabackup: uses posix_fadvise().
        xtrabackup: cd to /var/lib/mysql
        xtrabackup: Target instance is assumed as followings.
        xtrabackup: innodb_data_home_dir = /var/lib/mysql
        xtrabackup: innodb_data_file_path = ibdata1:10M:autoextend
        xtrabackup: innodb_log_group_home_dir = ./
        xtrabackup: innodb_log_files_in_group = 2
        xtrabackup: innodb_log_file_size = 5242880
        >> /usr/bin/innobackupex-1.5.1:921: last if -e $suspend_file;
        >> /usr/bin/innobackupex-1.5.1:924: if ($ibbackup_pid == waitpid($ibbackup_pid, &WNOHANG)) {
        >> /usr/lib64/perl5/5.8.8/x86_64-linux-thread-multi/POSIX.pm:48 : *$AUTOLOAD = sub { $val };
        >> /usr/bin/innobackupex-1.5.1:925: $ibbackup_pid = '';
        >> /usr/bin/innobackupex-1.5.1:926: Die "ibbackup child process has died";
        >> /usr/bin/innobackupex-1.5.1:552: my $message = shift;
        >> /usr/bin/innobackupex-1.5.1:553: my $extra_info = '';
        >> /usr/bin/innobackupex-1.5.1:556: kill_child_processes();
        >> /usr/bin/innobackupex-1.5.1:1477: if ($ibbackup_pid) {
        >> /usr/bin/innobackupex-1.5.1:1482: if ($mysql_pid) {
        >> /usr/bin/innobackupex-1.5.1:558: if ($current_mysql_request) {
        >> /usr/bin/innobackupex-1.5.1:562: die "$prefix Error: $message$extra_info";
        innobackupex-1.5.1: Error: ibbackup child process has died at /usr/bin/innobackupex-1.5.1 line 562.

        Comment


        • #5
          The problem seems to be in the C compiled binary xtrabackup. Try running it alone, without innobackupex, and find out what it does and what it prints out.

          Comment

          Working...
          X