Ошибка phpmyadmin «нет данных для импорта», как исправить?
-
18-09-2019 - |
Вопрос
Я использую XAMPP на рабочем компьютере для размещения базы данных.Я экспортировал резервную копию («bintra.sql»), используя phpmybackuppro.Я использую xampp на Mac дома, и когда я пытаюсь импортировать файл sql, расположенный на моем рабочем столе, я получаю эту ошибку.
No data was received to import. Either no file name was submitted, or the file size exceeded the maximum size permitted by your PHP configuration. See FAQ 1.16.
Теперь размер файла bintra.sql составляет 922 КБ.Максимально допустимый размер, указанный на экране phpmyadmin, составляет 3072 КБ, поэтому я не думаю, что этот размер препятствует импорту.
Я использую phpmyadmin v2.11.7.
Есть ли у кого-нибудь идеи, почему не поступают данные для импорта?
Ответы на комментарии:
Это мои настройки загрузки из php.ini
;Whether to allow HTTP file uploads.
file_uploads = On
;Temporary directory for HTTP uploaded files (will use system default if not specified).
//upload_tmp_dir =
;Maximum allowed size for uploaded
files.
upload_max_filesize = 3M
;Maximum size of POST data that PHP will accept.
post_max_size = 8M
РЕДАКТИРОВАТЬ:
Вместо этого попробовал использовать Mamp.Прекрасно работает с тем же файлом sql.Я не знаю, почему.
Решение
У меня была такая же проблема в Windows.Оказывается, это было вызвано временным каталогом, который PHP использует для загрузки.По умолчанию это C:\Windows emp, который недоступен для записи в PHP.
В php.ini добавьте:
upload_tmp_dir = C:\inetpub\temp
Обязательно удалите все остальные upload_tmp_dir
настройки.Установить разрешения на C:\inetpub\temp
так IUSR
и IIS_IUSRS
есть разрешение на запись.Перезапустите веб-сервер, и все будет в порядке.
Другие советы
У МЕНЯ БЫЛА ТАКАЯ ПРОБЛЕМА, И ЭТО РАБОТАЛО ДЛЯ МЕНЯ:
Try these different settings in C:\wamp\bin\apache\apache2.2.8\bin\php.ini
Find:
post_max_size = 8M
upload_max_filesize = 2M
max_execution_time = 30
max_input_time = 60
memory_limit = 8M
Change to:
post_max_size = 750M
upload_max_filesize = 750M
max_execution_time = 5000
max_input_time = 5000
memory_limit = 1000M
Затем перезапустите xampp или wamp, чтобы изменения вступили в силу.
или остановитесь, а затем запустите только Apache в Xampp
Проверьте разрешения для каталога загрузки.Вы можете найти его путь внутри /etc/phpmyadmin/apache.conf
файл.
В моем случае (Ubuntu 14.04) это было:
php_admin_value upload_tmp_dir /var/lib/phpmyadmin/tmp
Поэтому я проверил разрешения для /var/lib/phpmyadmin/tmp
и оказывается, что этот каталог недоступен для записи для моего пользователя Apache (который по умолчанию www-data
).Это может быть так, особенно если вы сменили пользователя Apache, как это сделал я.
Откройте файл php.ini, используя CNTRL+F, чтобы найти следующие настройки, которые могут быть причиной:
- file_uploads
- upload_max_filesize
- post_max_size
- предел_памяти
- max_input_time
- max_execution_time
Обязательно сохраните копию php.ini перед внесением изменений.Вам потребуется настроить параметры в соответствии с размером вашего файла и увеличить время ввода и/или выполнения.
Не забудьте перезапустить службы после внесения изменений.
Предупреждение! Если вы отрегулируете эти настройки слишком свободно, могут возникнуть некоторые непредвиденные недостатки.Я недостаточно эксперт, чтобы знать это наверняка.
Источник: http://forum.wampserver.com/read.php?2,20757,20935
Если вы используете xampp ты можешь найти php.ini
файл, зайдя в xampp панель управления и и щелкнув config
кнопка перед Apache.
xampp in ubuntu
cd /opt/lampp/etc
vim php.ini
Find:
post_max_size = 8M
upload_max_filesize = 2M
max_execution_time = 30
max_input_time = 60
memory_limit = 8M
Change to:
post_max_size = 750M
upload_max_filesize = 750M
max_execution_time = 5000
max_input_time = 5000
memory_limit = 1000M
sudo /opt/lampp/lampp restart
Мне никогда не удавалось импортировать тупые файлы, используя PhpMyAdmin или Phpmabackuppro, лучше перейти на консоли или командную строку (как бы он ни назывался в Mac) и сделать следующее:
mysql -u имя пользователя -p имя базы данных
замените имя пользователя именем пользователя, которое вы используете для подключения к MySQL, затем он попросит вас ввести пароль для этого имени пользователя, и все.
вы можете импортировать любой размер немого, используя этот метод
Данных для импорта получено не было.Либо имя файла не было отправлено, либо размер файла превысил максимальный размер, разрешенный вашей конфигурацией PHP.См. FAQ 1.16.
Это мои настройки загрузки из php.iniupload_tmp_dir = "D:\xampp\xampp\tmp" ;//set these for temp file storing
; Maximum allowed size for uploaded files.
; http://php.net/upload-max-filesize
upload_max_filesize = 10M ;//change it according to max file upload size
Я уверен, что ваша проблема будет решена с помощью этой инструкции.
upload_tmp_dir = "D:\xampp\xampp\tmp"
Здесь вы можете установить любой каталог, в котором может храниться временный файл, я установил в D:диск xampp, поэтому я установил его «D:\xampp\xampp mp».
Измените настройки загрузки в файле конфигурации php.ini.
Измените приведенные ниже настройки на следующие значения:
Изменить на:
post_max_size = 750M
upload_max_filesize = 750M
max_execution_time = 5000
max_input_time = 5000
memory_limit = 1000M
просто скопируйте исходную базу данных (с вашего ПК C:\xampp\mysql\data\"ваша база данных"), затем скопируйте ее в папку назначения на вашем MAC (/Application/Xampp/xamppfiles/var/mysql).
не забудьте установить разрешение для новой скопированной папки (вашей базы данных) на своем MAC, иначе вы не сможете видеть свои таблицы!
чтобы установить разрешение:-co в папку вашей базы данных (/application/xampp/xamppliles/var/mysql/"Ваша база данных") -Поймите, нажмите на нее -Выберите Информацию -В обмен и разрешения вы должны добавить свою учетную запись пользователя (т.е.Администратор или все) -уделите свою привилегию для чтения и записи.
наслаждайтесь своей базой данных ;)
Я думаю, это своего рода обман... но вы также можете заархивировать файл sql, а затем импортировать его.У меня была эта проблема раньше, когда я работал с программным обеспечением форума, и ее всегда можно было легко исправить.
если ни одно из вышеперечисленных решений вам не помогло.
в моем случае phpmyadmin использовал другой файл конфигурации (php.ini).чтобы узнать, какой файл конфигурации используется phpmyadmin:
идти /usr/share/phpmyadmin
затем отредактируйте index.php
файл и начните с этого
<?php
phpinfo();
die();
// ...
теперь, когда вы посещаете localhost/phpmyadmin
вы можете искать php.ini
.
вы можете сказать, где находится файл конфигурации, в моем случае это было /etc/php/7.3/apache2/php.ini
теперь тебе нужно обновить upload_max_filesize
и post_max_size
и вам, возможно, придется изменить upload_tmp_dir
сохраните изменения и затем запустите sudo service apache2 restart
теперь все должно быть в порядке