Резервное копирование MySQL и сохраняет во внешнем сервере

Единственным путем я знаю для создания, что-то вроде этого работать должно изменить маршрут значения по умолчанию сервера CentOS. Это изменило бы интерфейс, Ваш трафик выходит и является видом вещи, которую необходимо проверить с системными администраторами и/или сетевыми администраторами.

на Вашем сервере CentOS:

netstat -rn ищите место назначения, перечисленное как "значение по умолчанию", и отметьте связанный шлюз.

route add default gateway 11.22.33.34 добавит Ваш новый маршрут по умолчанию

route del -n default gateway < destination copied from above > добавит Ваш новый шлюз по умолчанию

0
задан 24 January 2013 в 10:39
3 ответа

Я действительно рекомендую AutoMySQLBackup для ваших целей. Он покрывает ваши требования с некоторыми дополнительными функциями. Однако при удаленном резервном копировании проект предусматривает запуск инструмента на сервере резервного копирования и прямое чтение удаленной базы данных. Таким образом, не требуется FTP и т. Д.

Немного не хватает хорошей документации, но, с другой стороны, он действительно прост в использовании. AutoMySQLBackup дополнительно доступен в репозиториях Ubuntu.

Удачи :)

1
ответ дан 4 December 2019 в 12:40

При просмотре исходного кода , есть несколько неожиданных моментов, на которые может повлиять выполнение одной команды или нескольких команд.

Сначала этот комментарий в dispatch.c :

/*
 * Wait for packets to come in using poll().  When a packet comes in,
 * call receive_packet to receive the packet and possibly strip hardware
 * addressing information from it, and then call through the
 * bootp_packet_handler hook to try to do something with it.
 */

Похоже, что dhcrelay.c использует архитектуру опроса . Здесь используется тайм-аут (основанный на времени) при опросе одного из интерфейсов (например: -i eth0 или -i eth1 ).

Казалось бы, это указывает на то, что существует некоторая вероятность блокировки для одного интерфейса, пока другой опрашивается.

Другой фрагмент, на этот раз в функции dispatch () , он опрашивает один из указанных интерфейсов:

/* Wait for a packet or a timeout... XXX */
count = poll(fds, nfds, to_msec);

После истечения времени ожидания функции опроса или получения пакета dhcrelay ] переходит к «следующему» интерфейсу:

    /* Get the current time... */
    time(&cur_time);

    i = 0;
    for (l = protocols; l; l = l->next) {
      struct interface_info *ip = l->local;

      if ((fds[i].revents & (POLLIN | POLLHUP))) {
        fds[i].revents = 0;
        if (ip && (l->handler != got_one ||
            !ip->dead))
          (*(l->handler))(l);
        if (interfaces_invalidated)
          break;
      }
      i++;
    }
    interfaces_invalidated = 0;
  } while (1);

Обратите внимание, что вся отправка содержит цикл while (1) .

Итак, что все это означает?

Я бы сказал, что если у вас интенсивно загруженная сеть с большим количеством хостов и аренда DHCP относительно коротка, тогда вы можете рассмотреть возможность запуска двух экземпляров dchrelay.

Если, однако, После этого я лично установил backuppc на другой сервер, который выполняет резервное копирование дампов файлов через rsync.

Если вам не нужен backuppc, вы можете создать другой сценарий, который запустится после завершения первого и просто скопирует созданный файлы в другое место. (если вам нужен пример этого сценария, просто скажите, какой способ вы можете предоставить - ssh, rsync, scp или (я не предпочитаю) - FTP

1
ответ дан 4 December 2019 в 12:40

Самый простой способ, который я мог придумать, - это сделать что-то вроде следующего mysqldump [параметры mysqldump] | gzip -c | ssh user @ remotehost "cat>

, если это вас не устраивает, попробуйте объяснить, почему

1
ответ дан 4 December 2019 в 12:40

Теги

Похожие вопросы