Импорт базы данных |
Здравствуйте, гость ( Вход | Регистрация )
Импорт базы данных |
23.4.2017, 21:20
Сообщение
#1
|
|
Пресмертн. Проф. Патологич. Библиомансии Возраст: 50 Группа: Пользователи Сообщений: 24 683 Регистрация: 13.1.2005 Из: Владимир Пользователь №: 8 330 Вставить ник Цитата |
Пытаюсь импортировать базу данных сайта на новый хостинг через phpMyAdmin.
Но размер моей базы данных превышает допустимый. Даже в архивированном виде (.zip) вдвое больше допустимого. Данная проблема имеет какое-нибудь решение? Ну в смысле, можно ли обойти данное ограничение по размеру? --------------------
На каждого, кто пляшет русалочьи пляски, есть Finnegan, который умеет ходить по воде.
|
|
|
| |
25.4.2017, 22:30
Сообщение
#41
|
|
Новенький Возраст: 48 Группа: Пользователи Сообщений: 9 643 Регистрация: 21.4.2003 Из: Владимир Пользователь №: 2 702 Вставить ник Цитата |
system("/usr/bin/mysql -uпользователь -pпароль -Dбаза -hхост --default_character_set=cp1251 < /путь_к_сайту/дамп.sql"); Собственно, если в команде указать utf-8, перекодировка и не потребуется... --------------------
Ну, допустим, про кипятильник я наврал... Но факт остается фактом!
|
|
|
25.4.2017, 22:57
Сообщение
#42
|
|
Пресмертн. Проф. Патологич. Библиомансии Возраст: 50 Группа: Пользователи Сообщений: 24 683 Регистрация: 13.1.2005 Из: Владимир Пользователь №: 8 330 Вставить ник Цитата |
Сложно вслепую что то советовать. Я бы сохранил файл дампа в кодировке 1251 через редактор так как сайт судя по всему работает именно с ней и попробовал бы импортировать через консольный mysql , запустив его через php. То есть написал бы простой php скрипт <?php system("/usr/bin/mysql -uпользователь -pпароль -Dбаза -hхост --default_character_set=cp1251 < /путь_к_сайту/дамп.sql"); ?> Залил бы на сайт и запустил бы в браузере. Скорее всего таким образом, если сделать все правильно, удастся корректно импортировать любой из дампов. Т.е. если у меня id12345_xxx - username id12345_yyy - database name то нужно создать php-файл с <?php system("/usr/bin/mysql -uid12345_xxx -p12345 -Did12345_yyy -hlocalhost --default_character_set=cp1251 < /http://mysite.com/1234_zzz.sql"); ?> и выделенная D так и должна быть большой? У меня такой php файл не работает - просто чистый экран --------------------
На каждого, кто пляшет русалочьи пляски, есть Finnegan, который умеет ходить по воде.
|
|
|
26.4.2017, 8:06
Сообщение
#43
|
|
Новенький Возраст: 48 Группа: Пользователи Сообщений: 9 643 Регистрация: 21.4.2003 Из: Владимир Пользователь №: 2 702 Вставить ник Цитата |
<?php
system("/usr/bin/mysql -uid12345_xxx -p12345 -Did12345_yyy -hlocalhost --default_character_set=cp1251 < /http://mysite.com/1234_zzz.sql"); echo "all done"; ?> Так будет не чистый. Правда, это ровным счетом ничего не меняет --------------------
Ну, допустим, про кипятильник я наврал... Но факт остается фактом!
|
|
|
26.4.2017, 8:49
Сообщение
#44
|
|
специалист Возраст: 46 Группа: Пользователи Сообщений: 3 311 Регистрация: 10.10.2001 Пользователь №: 612 Вставить ник Цитата |
Т.е. если у меня id12345_xxx - username id12345_yyy - database name то нужно создать php-файл с <?php system("/usr/bin/mysql -uid12345_xxx -p12345 -Did12345_yyy -hlocalhost --default_character_set=cp1251 < /http://mysite.com/1234_zzz.sql"); ?> и выделенная D так и должна быть большой? У меня такой php файл не работает - просто чистый экран Да, D заглавная. Этот скрипт и не должен был ничего выводить в случае если он сработал успешно. Но в случае ошибки - он тоже ничего не выведет (можно было бы организовать вывод ошибки при запуске mysql - но это нужно морочаться с перенаправлением вывода потока stderr в stdout, короче сложнаааааааа). Если скрипт отрабатывает (выводит пустую страницу в браузер) но импорта не происходит, я бы действовал так: Проверил разрешено ли выполнение внешних программ в PHP заодно узнал бы не ошиблись ли мы с путём к mysql , так как я дал дефолтный путь, в конкретной системе он может быть другим. Для этого я бы закоментировал строку двумя слешами: //system("/usr/bin/mysql -uid12345_xxx -p12345 -Did12345_yyy -hlocalhost --default_character_set=cp1251 < /http://mysite.com/1234_zzz.sql"); и добавил бы после неё system("whereis mysql"); И запустил бы в браузере. Если ничего не вывелось - значит скорее всего запрещен запуск внешних программ из PHP либо (маловероятно) не установлена утилита whereis в системе. Если вывелось - поискал бы среди вывода путь к самому mysql. В моём случае вывод такой: mysql: /usr/bin/mysql /usr/lib64/mysql /usr/share/mysql /usr/share/man/man1/mysql.1.gz То есть mysql можно вызывать либо /usr/bin/mysql либо /usr/share/mysql с одинаковым результатом Предположим бинарник mysql нашёлся и он лежит там где ты его вписал в предыдущую команду. Тогда надо проверять точность указания имени базы, логина, пароля, и места расположения дампа БД. К примеру у тебя указан путь к дампу /http://mysite.com/1234_zzz.sql - тут точно ошибка. Надо указывать полный путь к файлу в файловой системе сервера. Самый простой способ узнать путь - вписать в этот же PHP скрипт команду echo dirname(__FILE__); (перед и после FILE по два подчёркивания). Тогда ты узнаешь в каком каталоге в файловой системе лежит твой PHP скрипт. Положи туда же дамп и укажи этот путь в команде импорта. --------------------
{ cli; jmp $-2 }
-
|
|
|
26.4.2017, 10:14
Сообщение
#45
|
|
Новенький Возраст: 48 Группа: Пользователи Сообщений: 9 643 Регистрация: 21.4.2003 Из: Владимир Пользователь №: 2 702 Вставить ник Цитата |
Только чтобы что-то вывелось в браузере - все-таки нужно echo system(...
Или заменить system на passthru - то же самое. --------------------
Ну, допустим, про кипятильник я наврал... Но факт остается фактом!
|
|
|
26.4.2017, 10:54
Сообщение
#46
|
|
специалист Возраст: 46 Группа: Пользователи Сообщений: 3 311 Регистрация: 10.10.2001 Пользователь №: 612 Вставить ник Цитата |
Только чтобы что-то вывелось в браузере - все-таки нужно echo system(... Или заменить system на passthru - то же самое. Не нужно echo system. Курите маны ибо они есть рулез :) http://php.net/manual/en/function.system.php system (PHP 4, PHP 5, PHP 7) system — Execute an external program and display the output --------------------
{ cli; jmp $-2 }
-
|
|
|
26.4.2017, 11:24
Сообщение
#47
|
|
Новенький Возраст: 48 Группа: Пользователи Сообщений: 9 643 Регистрация: 21.4.2003 Из: Владимир Пользователь №: 2 702 Вставить ник Цитата |
Хм. Да, пардоньте, с exec спутал.
Все-таки хаки не так часто приходится использовать, чтобы помнить назубок ;) --------------------
Ну, допустим, про кипятильник я наврал... Но факт остается фактом!
|
|
|
26.4.2017, 11:39
Сообщение
#48
|
|
специалист Возраст: 46 Группа: Пользователи Сообщений: 3 311 Регистрация: 10.10.2001 Пользователь №: 612 Вставить ник Цитата |
Хм. Да, пардоньте, с exec спутал. Все-таки хаки не так часто приходится использовать, чтобы помнить назубок ;) Да создатели PHP вообще параноики - сделали exec-подобных функций ажли 5 штук. И так в PHP везде - полный бардак в именовании функций, в передаче значений (порядок и типы), в передаче возвращаемых значений и т.п. Хорошо хоть у большинства (у меня в том числе) хватает ума не спрашивать про такие вещи у разработчиков на собеседовании и не требовать потом чтобы они помнили это в реальной работе. Запомнить (нормальному человеку) это невозможно, проще держать под рукой справочник а правильнее пользоваться IDE (phpStorm) с подсказками. --------------------
{ cli; jmp $-2 }
-
|
|
|
26.4.2017, 12:07
Сообщение
#49
|
|
Новенький Возраст: 48 Группа: Пользователи Сообщений: 9 643 Регистрация: 21.4.2003 Из: Владимир Пользователь №: 2 702 Вставить ник Цитата |
Запомнить (нормальному человеку) это невозможно Собственно, и ненужно. У РНР есть один несомненный плюс - это документация ;) А функции, которые действительно постоянно нужны, при желании можно взять и завернуть в класс с аккуратным и консистентным интерфейсом. И вовсе не касаться сишных детских болезней Пыха. --------------------
Ну, допустим, про кипятильник я наврал... Но факт остается фактом!
|
|
|
26.4.2017, 15:24
Сообщение
#50
|
|
Пресмертн. Проф. Патологич. Библиомансии Возраст: 50 Группа: Пользователи Сообщений: 24 683 Регистрация: 13.1.2005 Из: Владимир Пользователь №: 8 330 Вставить ник Цитата |
1. Очистил базу данных от содержимого и таблиц, чтоб все поставилось с нуля.
2. Файл .sql не удалось сохранить в кодировке windows-1251, поэтому оставил его в кодировке utf8, а в php файле изменил указание кодировки на default_character_set=utf8 (utf8 без черточки) 3. Запуск файла php ничего не дал ни в исходном виде, ни со слешами и командой whereis. В любом случае - белый экран и чистая БД. --------------------
На каждого, кто пляшет русалочьи пляски, есть Finnegan, который умеет ходить по воде.
|
|
|
26.4.2017, 15:38
Сообщение
#51
|
|
специалист Возраст: 46 Группа: Пользователи Сообщений: 3 311 Регистрация: 10.10.2001 Пользователь №: 612 Вставить ник Цитата |
1. Очистил базу данных от содержимого и таблиц, чтоб все поставилось с нуля. 2. Файл .sql не удалось сохранить в кодировке windows-1251, поэтому оставил его в кодировке utf8, а в php файле изменил указание кодировки на default_character_set=utf8 (utf8 без черточки) 3. Запуск файла php ничего не дал ни в исходном виде, ни со слешами и командой whereis. В любом случае - белый экран и чистая БД. Печаль. Значит PHP у тебя работает в SAFE MODE и запуск внешних программ закрыт. Тут - либо искать SSH доступ к серверу чтобы попытаться выполнить те же команды напрямую через консоль операционки. Либо пытаться и дальше мучиться с Web-скриптами импорта с непредсказуемым результатом. --------------------
{ cli; jmp $-2 }
-
|
|
|
26.4.2017, 15:43
Сообщение
#52
|
|
Пресмертн. Проф. Патологич. Библиомансии Возраст: 50 Группа: Пользователи Сообщений: 24 683 Регистрация: 13.1.2005 Из: Владимир Пользователь №: 8 330 Вставить ник Цитата |
Долбанный переезд. Три года все работало без единой ошибки.
А тут какие-то танцы с бубнами из-за кодировки. --------------------
На каждого, кто пляшет русалочьи пляски, есть Finnegan, который умеет ходить по воде.
|
|
|
26.4.2017, 15:45
Сообщение
#53
|
|
Новенький Возраст: 48 Группа: Пользователи Сообщений: 9 643 Регистрация: 21.4.2003 Из: Владимир Пользователь №: 2 702 Вставить ник Цитата |
Вы просто в неудачное место переехали. О чем и говорилось с самого начала ветки.
На нормальном хостинге вы бы уже все сделали и забыли. --------------------
Ну, допустим, про кипятильник я наврал... Но факт остается фактом!
|
|
|
26.4.2017, 15:51
Сообщение
#54
|
|
Пресмертн. Проф. Патологич. Библиомансии Возраст: 50 Группа: Пользователи Сообщений: 24 683 Регистрация: 13.1.2005 Из: Владимир Пользователь №: 8 330 Вставить ник Цитата |
Вы просто в неудачное место переехали. О чем и говорилось с самого начала ветки. На нормальном хостинге вы бы уже все сделали и забыли. А какой нормальный? Меня 000webhost.com вполне устраивал. Сайт на нем с 2014 года работал как часы без ошибок. А раз все работало, у меня и мысли не возникало искать что-то лучшее. --------------------
На каждого, кто пляшет русалочьи пляски, есть Finnegan, который умеет ходить по воде.
|
|
|
26.4.2017, 16:31
Сообщение
#55
|
|
Новенький Возраст: 48 Группа: Пользователи Сообщений: 9 643 Регистрация: 21.4.2003 Из: Владимир Пользователь №: 2 702 Вставить ник Цитата |
М-м... сладость халявного уксуса!..
Однако когда я баловался с халявным же аккаунтом на том же Хостингере, он мне показался довольно вменяемым. Сайт для тестирования разворачивался медленно и печально, но без каких-либо проблем. Хостингер, правда, однажды заявил "да вы задолбали, спамеры, давайте-ка все, кто не робот, скиньтесь по копеечке" - но это было один раз, и больше попыток доения не замечено. P.S. Специально вспомнил доступ к ЛК на Хостингере и зашел посмотреть - ограничение в PMA 256 Мб. SSH, конечно, на бесплатном тарифе нет, но без него вполне удавалось обойтись. Сообщение отредактировал Adamos - 26.4.2017, 16:41 --------------------
Ну, допустим, про кипятильник я наврал... Но факт остается фактом!
|
|
|
26.4.2017, 16:54
Сообщение
#56
|
|
Пресмертн. Проф. Патологич. Библиомансии Возраст: 50 Группа: Пользователи Сообщений: 24 683 Регистрация: 13.1.2005 Из: Владимир Пользователь №: 8 330 Вставить ник Цитата |
М-м... сладость халявного уксуса!.. Однако когда я баловался с халявным же аккаунтом на том же Хостингере, он мне показался довольно вменяемым. Сайт для тестирования разворачивался медленно и печально, но без каких-либо проблем. Хостингер, правда, однажды заявил "да вы задолбали, спамеры, давайте-ка все, кто не робот, скиньтесь по копеечке" - но это было один раз, и больше попыток доения не замечено. P.S. Специально вспомни доступ к ЛК на Хостингере и зашел посмотреть - ограничение в PMA 256 Мб. SSH, конечно, на бесплатном тарифе нет, но без него вполне удавалось обойтись. Я уехал с Хостингера на 000webhost в 2014. Там пропускная квота с гулькин клюв, чуть превысишь - и сайт падает, а вместо него показывается главная страница хостингера. И ftp постоянно рвется, сайт приходится заливать частями. У 000 по крайней мере такого не было. И я так понимаю, Хостингер - какое-то внебрачное дитя 000webhost --------------------
На каждого, кто пляшет русалочьи пляски, есть Finnegan, который умеет ходить по воде.
|
|
|
26.4.2017, 17:54
Сообщение
#57
|
|
Новенький Возраст: 48 Группа: Пользователи Сообщений: 9 643 Регистрация: 21.4.2003 Из: Владимир Пользователь №: 2 702 Вставить ник Цитата |
И я так понимаю, Хостингер - какое-то внебрачное дитя 000webhost Учитывая, что "нули" на три года моложе и у них в шапке сайта написано, что они обслуживаются облаком Хостингера - скорее наоборот. Впрочем, спорить о вкусе уксуса не буду. За отсутствием опыта. Сообщение отредактировал Adamos - 26.4.2017, 17:55 --------------------
Ну, допустим, про кипятильник я наврал... Но факт остается фактом!
|
|
|
26.4.2017, 18:30
Сообщение
#58
|
|
Пресмертн. Проф. Патологич. Библиомансии Возраст: 50 Группа: Пользователи Сообщений: 24 683 Регистрация: 13.1.2005 Из: Владимир Пользователь №: 8 330 Вставить ник Цитата |
А облачный хостинг от Амазона стоит внимания?
Ну или какой-нибудь другой недорогой платный хостинг можете посоветовать? --------------------
На каждого, кто пляшет русалочьи пляски, есть Finnegan, который умеет ходить по воде.
|
|
|
26.4.2017, 18:58
Сообщение
#59
|
|
Новенький Возраст: 48 Группа: Пользователи Сообщений: 9 643 Регистрация: 21.4.2003 Из: Владимир Пользователь №: 2 702 Вставить ник Цитата |
А облачный хостинг от Амазона стоит внимания? Конечно. Если вы знаете, зачем вам облако. В противном случае можете пропускать их рекламу мимо ушей. Ну или какой-нибудь другой недорогой платный хостинг можете посоветовать? Из совсем дешевых - есть, скажем, Fozzy.com (120 руб. в месяц или 1300 в год). Знакомый там хостится, его устраивает. Облаков за такие деньги не бывает, насколько мне известно. На этом тарифе: 10 GB иеста + 10 GB под БД, потолок в 1GB памяти, доступ по FTP и SSH, некий "ввод-вывод" - 10240 KB/s Ограничение PMA - 500 MB. Сообщение отредактировал Adamos - 26.4.2017, 19:08 --------------------
Ну, допустим, про кипятильник я наврал... Но факт остается фактом!
|
|
|
26.4.2017, 19:41
Сообщение
#60
|
|
Пресмертн. Проф. Патологич. Библиомансии Возраст: 50 Группа: Пользователи Сообщений: 24 683 Регистрация: 13.1.2005 Из: Владимир Пользователь №: 8 330 Вставить ник Цитата |
Как-то совсем не дешево.
--------------------
На каждого, кто пляшет русалочьи пляски, есть Finnegan, который умеет ходить по воде.
|
|
|
Политика конфиденциальности | Легкая версия |