Премини към съдържанието
Форумът в приложение

По-лесно сърфиране. Научи повече.

Kaldata.com - Форуми

Приложение на форума на цял екран с push известия, значки и други.

За да инсталирате това приложение на iOS и iPadOS
  1. Докоснете Иконата за споделяне в Safari
  2. Превъртете менюто и докоснете Добавяне към началния екран.
  3. Докоснете Добавяне в горния десен ъгъл.
За да инсталирате това приложение на Android
  1. Докоснете менюто с 3 точки (⋮) в горния десен ъгъл на браузъра.
  2. Докоснете Добавяне към началния екран или Инсталиране на приложение.
  3. Потвърдете, като докоснете Инсталиране.

Добре дошли!

Добре дошли в нашите форуми, пълни с полезна информация. Имате проблем с компютъра или телефона си? Публикувайте нова тема и ще намерите решение на всичките си проблеми. Общувайте свободно и открийте безброй нови приятели.

Моля, регистрирайте се за да публикувате тема и да получите пълен достъп до всички функции.

 

Импортиране на 1 гб база данни, как?

Featured Replies

Здравейте приятели,

ОС: ubutu 8.10 инстелирал съм xampp пакет, подкарал съм сървара и сега дойде време да си преместя сайтчето с база данни SQL 1 ГБ, как ще стане номера като phpmyadmin има ограничение от 2.048 KiB на текстовия вайл за импортиране?

Здравейте приятели,

ОС: ubutu 8.10 инстелирал съм xampp пакет, подкарал съм сървара и сега дойде време да си преместя сайтчето с база данни SQL 1 ГБ, как ще стане номера като phpmyadmin има ограничение от 2.048 KiB на текстовия вайл за импортиране?

от ккомандна линия:

mysql -u user -p password database <database_dump

  • 2 седмици по-късно...
  • Автор

Благодаря ти за отговора братле, но отново ще задам допълнително въпросче. Значи базата данни която искам да импортирам да речем че се казва "import_database" тази команда как да се пригоди, на според името на базата данни? Какво точно трябва да направя за да импортирам тази база данни? Къде трябва да я сложа, в коя директория, каква е подготовката преди да изпълня тази команда?

Редактирано от vijikey (преглед на промените)

Благодаря ти за отговора братле, но отново ще задам допълнително въпросче. Значи базата данни която искам да импортирам да речем че се казва "import_database" тази команда как да се пригоди, на според името на базата данни? Какво точно трябва да направя за да импортирам тази база данни? Къде трябва да я сложа, в коя директория, каква е подготовката преди да изпълня тази команда?

mysql -u user -p password import_database <database_dump
Базата мисля трябва да е създадена, но погледни за всеки случай дали в първите редове на дъмпа няма нещо като
create or replace database .......
или
drop database ....; create database ...

това се изпълнява в командна линия като потребител root

Редактирано от capnemo (преглед на промените)

  • Автор

След въвеждане на командата, която написа ми изписа, че не е инстелирана програмата "mysql" и че мога да я инстелирам като напиша нещо си, обаче xampp ima mysql трябва ли да посоча директорията на mysql в xampp пакета и как ще стане командата тогава ?

След въвеждане на командата, която написа ми изписа, че не е инстелирана програмата "mysql" и че мога да я инстелирам като напиша нещо си, обаче xampp ima mysql трябва ли да посоча директорията на mysql в xampp пакета и как ще стане командата тогава ?

Тогава ще е нещо от рода:

/path/to/mysqlexe/mysql ......
за да намериш къде е тази програма
find / -type f -name mysql

И да те питам при условие че има стандартни пакети в дистрибуцията за apache, php, mysql за чий ти е да инсталираш външен пакет?

  • Автор

Тогава ще е нещо от рода:

/path/to/mysqlexe/mysql ......
за да намериш къде е тази програма
find / -type f -name mysql

И да те питам при условие че има стандартни пакети в дистрибуцията за apache, php, mysql за чий ти е да инсталираш външен пакет?

Ами ползвам този готов пакет, защото всичко върви заедно и не се налага да обръщам внимание на настройките на всяко приложение, но явно не ми върши работа, импротирането не стана, а с bigdump ми дава грешки в базата данни явно не му харесва някой символ в нея, сега съм в задънена улица... sad.gif

Ами ползвам този готов пакет, защото всичко върви заедно и не се налага да обръщам внимание на настройките на всяко приложение, но явно не ми върши работа, импротирането не стана, а с bigdump ми дава грешки в базата данни явно не му харесва някой символ в нея, сега съм в задънена улица... sad.gif

Каква грешка дава, това е странно. Да не би да се налага да променяш кодови таблици и т.н.?

  • Автор

Каква грешка дава, това е странно. Да не би да се налага да променяш кодови таблици и т.н.?

С малко помощ от гугъл и теб разбира се, успях да променя малко командата ти, за да стане работата и през терминала, обаче интересното е че и през терминала дава същата грешка като през bigdump на една и съща линия, но този път терминала ми изясни и следното : Got a packet bigger than 'max_allowed_packet' bytes а сега ми кажи какво да правя :ph34r: сега трябва да търся файла, в който се съдържа индекса в байтове и трябва да го увелича, но кой е файла се пита в задачата?

С малко помощ от гугъл и теб разбира се, успях да променя малко командата ти, за да стане работата и през терминала, обаче интересното е че и през терминала дава същата грешка като през bigdump на една и съща линия, но този път терминала ми изясни и следното : Got a packet bigger than 'max_allowed_packet' bytes а сега ми кажи какво да правя :ph34r: сега трябва да търся файла, в който се съдържа индекса в байтове и трябва да го увелича, но кой е файла се пита в задачата?

Ето тук има описано каква е идеята. Но пише че максималния размер, който се поддържа за импорт е 1Г, ако твоята база е по-голяма не се сещам как може да стане

http://dev.mysql.com/doc/refman/5.1/en/packet-too-large.html

  • Автор

Ето тук има описано каква е идеята. Но пише че максималния размер, който се поддържа за импорт е 1Г, ако твоята база е по-голяма не се сещам как може да стане

http://dev.mysql.com/doc/refman/5.1/en/packet-too-large.html

Значи ще пробвам с това mysql --max_allowed_packet=1500M

Егати късмета базата ми е 1,2 гб, сега вече съм прецакан!

Защо просто не импортираш базата данни на две части? Едната част ще съдържа N брой таблици и втората остатъчния брой таблици....

Редактирано от proletsearch (преглед на промените)

Защо просто не импортираш базата данни на две части? Едната част ще съдържа N брой таблици и втората остатъчния брой таблици....

Много добра идея, но с просто разделяне няма да стане. Ноооо, намерих една програмка за целта: http://websitebuildersresource.com/2008/11/26/great-mysql-mysqldump-split-utility/

Не знам дали работи, но лгиката й изглежда добра и вероятно ще свърши работа

Значи ще пробвам с това mysql --max_allowed_packet=1500M

Егати късмета базата ми е 1,2 гб, сега вече съм прецакан!

Споко, погледни по-нагоре

  • Автор

Така в момента бавно реже базата данни на части от по 300МБ, след като свърши как се процедира с частите, трябва да ги импротирам в една база данни, как ще стане на теория ? Ако е през phpmyadmin значи трябва да пипна и php.ini файла, за да променя следните настройки:

post_max_size = 300M (променено от 2М)

upload_max_filesize = 300M (не помня колко беше)

max_execution_time = 0 (В гугъл прочетох, че 0 е за неограничено време, а беше 60)

max_input_time = -l (в php.ini файла пише, че -l е за неограничено време, а беше 30)

memory_limit = 1000M (беше 128)

Ако имате някакви забележки давайте!

Редактирано от vijikey (преглед на промените)

Така в момента бавно реже базата данни на части от по 300МБ, след като свърши как се процедира с частите, трябва да ги импротирам в една база данни, как ще стане на теория ? Ако е през phpmyadmin значи трябва да пипна и php.ini файла, за да променя следните настройки:

post_max_size = 300M

upload_max_filesize = 300M

max_execution_time = 0 (В гугъл прочетох, че 0 е за неограничено време)

max_input_time = -l (в php.ini файла пише, че -l е за неограничено време)

memory_limit = 1000M

Ако имате някакви забележки давайте!

Пробвай в командна линия като импортваш един по един файловете по нарастване на номера им с тази команда:

mysql --max_allowed_packet=500M -u user -p password import_database <database_dump_1

phpmyadmin е хубав инструмент но зависи от параметрите на php и mysql едновременно. По-просто е да зависиш и променяш при нужда само едно нещо

Редактирано от capnemo (преглед на промените)

  • Автор

Братлета, след вече няколко часа опити, отговорът бил прост, отворих my.cnf файал на пакета xampp промених max_allowed_packet от 1М на 2000М за да мога да инжектирам базата си която беше 1.2 гб. Така в разрез с ограничението, което беше 1 ГБ, всичко стана супер! После по-надолу в my.cnf файла промених mysqldump от max_allowed_packet=16M отново на 2000М и използвах следната команда в терминала:

/opt/lampp/bin/mysql -u root -p imopro_test < imopro_test.sql

написах си mysql паролата, защото ме попита допълнително и изчаках няколко минути, след което си погледнах базата данни и всичко беше импортирано. Държа да подчертая понеже не беше сигурно дали не трябва да се създаде първо базата данни в phpmyadmin, да трябва, в моя случай базата данни в phpmyadmin се казва imopro_test а на десктопа на убунтуту тропнах imopro_test.sql файло, който трябваше да импортирам.

Още нещо, преди да се пишат каквито и да е команди и да се едитват каквито и да е файлове трябва да си логнат в терминала със sudo su командата, след което да напишеш отново в терминала dir и после пак да напишеш cd Desktop и сега вече системата знае от къде да вземе този imopro_test.sql файл, който да импортира. Малко завъртяно го обясних, но се надявам да ме разбере човекът, който ще се сблъска с този проблем, ако ли не да пише в тази тема, ако ме няма мен съм сигурен, че пичове като capnemo ще му обяснят стъпките по-прегледно.

Поздрави на всички и мерси казвам на capnemo и proletsearch който се включиха в случая, е и малко на чичо гугъл хаха!

  • 3 седмици по-късно...

ако направите dump-а да insert-ва записите по - отделно не би тр. да се променя размера на пакета, стига да няма огромни BLOB

Регистрирайте се или влезете в профила си за да коментирате

Разглеждащи това в момента 0

  • Няма регистрирани потребители разглеждащи тази страница.

Дарение

  • Подкрепи съществуването на форума - направи дарение
    32%
    Дарени 315 € от нужните 1 000 €

Бюлетин

Получавайте известие, когато има важна промяна или новина свързана с форума.

Профил

Навигация

Търсене

Търсене

Конфигуриране на push известия в браузъра

Chrome (Android)
  1. Докоснете иконата на катинар до адресната лента.
  2. Докоснете Разрешения → Известия.
  3. Променете предпочитанията си.
Chrome (Desktop)
  1. Кликнете върху иконата на катинар в адресната лента.
  2. Изберете Настройки на сайта.
  3. Намерете Известия и коригирайте предпочитанията си.