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

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

Kaldata.com - Форуми

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

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

Добре дошли!

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

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

 

Въпрос относно експортиране на MySQL database в zip file с PHP

Featured Replies

Здравейте. Имам един малък проблем с експортирането на базата данни в зип файл.

Права следното:


<?php 

$dbhost = 'localhost';

$dbuser= 'root';

$dbpassword ='';

$dbname= 'test';


mysql_connect("$dbhost", "$dbuser", "dbpassword ") or die (mysql_error());

mysql_select_db("$dbname") or die (mysql_error());

mysql_query("SET NAMES 'utf8' COLLATE 'utf8_general_ci'") or die (mysql_error());


if (isset($_POST['export'])){

	$backupFile = 'Zapis/'.$dbname . date("Y-m-d-H-i-s").".gz";

	$command = "mysqldump -u $dbuser -p $dbpassword $dbname | gzip -9 > $backupFile";

	system($command) or die ("greshka");

}

?>

<form method="post" action="test.php">

	<span>Зипване на базата данни в зип файл:</span>

	<input type="submit" name="export" value="Експортиране" />

</form>

Но на екрана ми извежда "greshka" и не създава зипнатия файл. Къде бъркам?

Благодаря Ви за помоща

Почти по същия начин го права и не става :whist:

Изпълни командата директно от конзолата.

Може би нямаш инстлиран gzip. Пробвай без него.

$command = "mysqldump -u $dbuser -p $dbpassword $dbname > $backupFile";

  • Автор

Попринцип нямам WinZip и затова пробвах да с разширение .rar, сега се създава файла, но е празен, т.е. създава ми файл с името на базата данни с разширение .rar, но е с големина 0 KB, къде можа да бъркам все още?


<?php 

if (isset($_POST['export'])){

	$backupFile = 'Arhivi/'.$dbname . date("Y-m-d-H-i-s").".rar";

	$command = "mysqldump -h $dbhost -u $dbuser -p $dbpassword $dbname > $backupFile";

	system($command);

}

?>

<form method="post" action="test.php">

	<span>Зипване на базата данни</span>

	<input type="submit" name="export" value="Експортиране" />

</form>

А дали изобщо има такава команда в MySQL mysqldump? Защото като я тествам под конзола ми дава грешка:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'mysqldump -h localhost -u root -p test > Arhivi/test2010-01-25-05-18' at line 1

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

Не оставяй интервал при задаване името и паролата.

А дали изобщо има такава команда в MySQL mysqldump? Защото като я тествам под конзола ми дава грешка:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'mysqldump -h localhost -u root -p test > Arhivi/test2010-01-25-05-18' at line 1

Ако няма такава команда (което може да провериш с един dir) кое връща грешката ?

И няма да може да създадеш rar архив. gzip е команда в Linux.

  • Автор

И няма да може да създадеш rar архив. gzip е команда в Linux.

Ако тази команда .gzip е за Linux коя е командата за Windows за създаване на zip file?

П.П. А за командата mysqldump в dir под конзола ми дава че имам синтактична грешка

Ако тази команда .gzip е за Linux коя е командата за Windows за създаване на zip file?

П.П. А за командата mysqldump в dir под конзола ми дава че имам синтактична грешка

За Windows няма опция за създаване на zip архив с mysqldump (или поне аз не знам за такава). WinZIP и WinRAR нямат връзка с mysqldump.

При Windows наклонената черта е обратна. Не / а \

В същност не съм бил прав.

Става с WinRAR, ако се изпозлва нещо такова:

mysql\bin>mysqldump -uusername -ppassword database | "c:\Program Files\WinRAR\Rar.exe" a backup.rar -sibackup.sql

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

За Windows няма опция за създаване на zip архив с mysqldump (или поне аз не знам за такава). WinZIP и WinRAR нямат връзка с mysqldump.

При Windows наклонената черта е обратна. Не / а \

В същност не съм бил прав.

Става с WinRAR, ако се изпозлва нещо такова:

mysql\bin>mysqldump -uusername -ppassword database | "c:\Program Files\WinRAR\Rar.exe" a backup.rar -sibackup.sql

грешката ти е че слагаш интервал м/у -p switch-a и паролата. те се пишат слято. освен това можеше много просто да си изкараш output-а от грешката на mysql а не калпав custom текст "greshka"

отделно заспваш текстов dump с разширение rar?? и не правиш проверка дали папката ти е достъпна за писане от потребителя.

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

грешката ти е че слагаш интервал м/у -p switch-a и паролата. те се пишат слято. освен това можеше много просто да си изкараш output-а от грешката на mysql а не калпав custom текст "greshka"

отделно заспваш текстов dump с разширение rar?? и не правиш проверка дали папката ти е достъпна за писане от потребителя.

Предполагам не си адресирал поста си до мен. Аз нямам проблем с архивиране.

  • 2 месеца по-късно...

Може ли да дадете целият код който ще работи защото ми трябва супер спешно моля ви .

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

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

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

Дарение

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

Бюлетин

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

Профил

Навигация

Търсене

Търсене

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

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