Как загрузить живой дб MySQL в локальный тестовый дб по требованию без SSH?

В дополнение к приведенным выше ответам в Python 3 мы можем просто создать list значений результата из map как

li = []
for x in map(chr,[66,53,0,94]):
    li.append(x)

print (li)
>>>['B', '5', '\x00', '^']

. Мы можем обобщить другой пример, где я был поражен , операции на карте также можно обрабатывать аналогичным образом, как в regex, мы можем написать функцию, чтобы получить list элементов для отображения и получить результат в одно и то же время. Ex.

b = 'Strings: 1,072, Another String: 474 '
li = []
for x in map(int,map(int, re.findall('\d+', b))):
    li.append(x)

print (li)
>>>[1, 72, 474]
6
задан Charles Roper 6 June 2015 в 12:12
поделиться

6 ответов

Так как можно получить доступ базе данных удаленно, можно использовать mysqldump от машины окон для выборки удаленной базы данных. От командной строки:

cd "into mysql directory"
mysqldump -u USERNAME -p -h YOUR_HOST_IP DATABASE_TO_MIRROR >c:\backup\database.sql

Программа попросит у Вас пароля базы данных и затем генерирует файл c:\backup\database.sql, что можно работать машине окон для вставки данных.

С маленькой базой данных, которая должна быть довольно быстрой.

5
ответ дан 16 December 2019 в 21:49
поделиться

Действительно ли репликация MySQL является опцией? Вы могли даже включить и выключить его, если бы Вы не хотели это постоянно тиражирование.

Это было хорошей статьей о репликации.

1
ответ дан 16 December 2019 в 21:49
поделиться

Я создал бы (Ruby) сценарий, чтобы сделать a SELECT * FROM ... на всех базах данных по серверу и затем делают a DROP DATABASE ... сопровождаемый серией новых INSERTs на локальной копии. Можно сделать a SHOW DATABASES запросите для списка баз данных динамично. Теперь, это предполагает, что структура таблицы не изменяется, но если Вы хотите поддерживать изменения таблицы, также Вы могли бы добавить a SHOW CREATE TABLE ... запрос и соответствие CREATE TABLE оператор для каждой таблицы в каждой базе данных. Для получения списка всех таблиц в базе данных, Вы делаете a SHOW TABLES запрос.

После того как у Вас есть сценарий, можно настроить его как запланированное задание для выполнения так часто, как Вам нужно.

0
ответ дан 16 December 2019 в 21:49
поделиться

@Mark Biek

Действительно ли репликация MySQL является опцией? Вы могли даже включить и выключить его, если бы Вы не хотели это постоянно тиражирование.

Спасибо за предложение, но я не могу включить репликацию на сервере. Это - общий сервер с очень небольшим количеством комнаты для маневра. Я обновил вопрос отметить это.

0
ответ дан 16 December 2019 в 21:49
поделиться

В зависимости от того, как часто необходимо копировать живые данные и как быстро необходимо сделать это, устанавливание phpMyAdmin на обеих машинах могло бы быть опцией. Можно экспортировать и импортировать DBS, но необходимо было бы сделать это вручную. Если это - маленький DB (и это кажется, что это), и Вы не должны жить данные, скопированные слишком часто, это могло бы работать хорошо на то, в чем Вы нуждаетесь.

0
ответ дан 16 December 2019 в 21:49
поделиться

Вот что я использую. Это выгружает базу данных с живого сервера, пока загружает ее на локальный сервер. mysqldump -hlive_server_addresss -ulive_server_user -plive_server_password --opt --compress live_server_db | mysql -ulocal_server_user -plocal_server_password local_server_db

Вы можете запустить это из файла bat . Вы всегда можете использовать запланированное задание.

2
ответ дан 16 December 2019 в 21:49
поделиться
Другие вопросы по тегам:

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