Я хочу імпортувати файл sql розміром приблизно 12 Мб. Але це спричиняє проблему під час завантаження. Чи є спосіб завантажити його, не розділяючи файл sql?
Я хочу імпортувати файл sql розміром приблизно 12 Мб. Але це спричиняє проблему під час завантаження. Чи є спосіб завантажити його, не розділяючи файл sql?
Відповіді:
Спробуйте імпортувати його з консолі mysql на смак вашої ОС.
mysql -u {DB-USER-NAME} -p {DB-NAME} < {db.file.sql path}
або якщо він знаходиться на віддаленому сервері, використовуйте прапор -h, щоб вказати хост.
mysql -u {DB-USER-NAME} -h {MySQL-SERVER-HOST-NAME} -p {DB-NAME} < {db.file.sql path}
mysql
на сервері лише за одну міграцію. Дякуємо за допомогу, хлопці! (Крім того, мені не потрібні дужки)
3 речі, які ви повинні зробити:
у php.ini
вашій установці php (примітка: залежно від того, чи потрібно це для CLI, apache або nginx, знайдіть потрібний php.ini для маніпулювання)
post_max_size=500M
upload_max_filesize=500M
memory_limit=900M
або встановити інші значення.
Перезапустіть / перезавантажте apache, якщо у вас встановлений apache, або php-fpm для nginx, якщо ви використовуєте nginx.
Віддалений сервер?
збільшити max_execution_time
також, оскільки завантаження файлу займе час.
Встановлення NGINX?
Ви повинні додати: client_max_body_size 912M;
в /etc/nginx/nginx.conf
до http{...}
блоку
/etc/php/7.1/apache2/php.ini
не вдалося
phpinfo()
і переконайтеся, що значення були встановлені правильно і сервер перезапущений
Відредагуйте файл config.inc.php, який знаходиться в каталозі phpmyadmin. У моєму випадку це знаходиться за адресою C:\wamp\apps\phpmyadmin3.2.0.1\config.inc.php
.
Знайдіть рядок із $cfg['UploadDir']
ним та оновіть його до$cfg['UploadDir'] = 'upload';
Потім створіть каталог під назвою 'upload' у каталозі phpmyadmin (для мене, на C:\wamp\apps\phpmyadmin3.2.0.1\upload\
).
Потім помістіть великий файл SQL, який ви намагаєтеся імпортувати, у новий upload
каталог. Тепер, перейшовши на сторінку імпортування db у консолі phpmyadmin, ви помітите випадаючий список, якого раніше не було - він містить усі файли sql у каталозі завантаження, який ви щойно створили. Тепер ви можете вибрати це і розпочати імпорт.
Якщо ви не використовуєте WAMP в Windows, то я впевнений, ви зможете адаптувати це до свого середовища без зайвих проблем.
Посилання: http://daipratt.co.uk/importing-large-files-into-mysql-with-phpmyadmin/comment-page-4/
config.default.php
тому ж режимі, що я використовую phpmyadmin версії 4.6.4
libraries/config.default.php
Рішення для КОРИСТУВАЧІВ LINUX (запуск із sudo)
Створення каталогів "завантаження" та "збереження":
mkdir /etc/phpmyadmin/upload
mkdir /etc/phpmyadmin/save
chmod a+w /etc/phpmyadmin/upload
chmod a+w /etc/phpmyadmin/save
Потім відредагуйте файл конфігурації phpmyadmin:
gedit /etc/phpmyadmin/config.inc.php
Нарешті, додайте абсолютний шлях для каталогів "завантаження" та "збереження":
$cfg['UploadDir'] = '/etc/phpmyadmin/upload';
$cfg['SaveDir'] = '/etc/phpmyadmin/save';
Тепер просто опустіть файли в /etc/phpmyadmin/upload
папку, і тоді ви зможете вибрати їх у phpmyadmin.
Сподіваюся, це допоможе.
File could not be read!
надсилає мені повідомлення, коли я натискаю кнопку подати у формі для завантаження. Посеред усунення несправностей це зараз.
sudo chmod 777 your-filename.sql
Всього один рядок, і все готово (переконайтесь, що команда mysql доступна як глобальна, або просто перейдіть до папки встановлення mysql і введіть до папки bin)
mysql -u database_user_name -p -D database_name < complete_file_path_with_file_name_and_extension
Ось
u
розшифровується як Користувачp
розшифровується як ПарольD
розшифровується як База даних--- НЕ ЗАБУВАЙТЕ ДОДАТИ <
ЗНАК ПІСЛЯ НАЗВАННЯ БАЗИ ДАНИХ ---
Повний шлях до файлу з ім'ям і розширенням може бути подібним
c:\folder_name\"folder name"\sql_file.sql
--- ЯКЩО ВАША ПАПКА І ІМЯ ФАЙЛУ МІСТИТЬ ПРОСТІР, ЩО ЇХ ЗВ'ЯЗАТИ ЗА ДВОЙНОЮ ЦИТАТОЮ ---
Порада. Примітка. Ви можете написати свій пароль після, -p
але це не рекомендується, оскільки він відображатиметься іншим, хто в цей час спостерігає за вашим екраном. Якщо ви не напишете там, він запитає вас, коли ви виконаєте команду, натиснувши клавішу enter.
Створіть zip-файл або файл tar і завантажте у phpmyadmin, ось це ..!
Я зміг імпортувати великий .sql
файл, маючи таку конфігурацію у httpd.conf
файлі:
Alias /phpmyadmin "C:/xampp/phpMyAdmin/"
<Directory "C:/xampp/phpMyAdmin">
AllowOverride AuthConfig
Require all granted
php_admin_value upload_max_filesize 128M
php_admin_value post_max_size 128M
php_admin_value max_execution_time 360
php_admin_value max_input_time 360
</Directory>
Вам доведеться відредагувати файл php.ini. змініть наступне відповідно upload_max_filesize
post_max_size
до розміру вашого файлу.
Спроба запустити, phpinfo()
щоб побачити їх поточне значення. Якщо у вас немає можливості змінити файл php.ini безпосередньо, спробуйте ini_set ()
Якщо це теж не варіант, ви можете спробувати bigdump .
Я не розумію, чому ніхто не згадує найпростіший спосіб .... просто розділіть великий файл за допомогою http://www.rusiczki.net/2007/01/24/sql-dump-file-splitter/ і після просто запустіть vie mySQL admin розділені генеровані файли, починаючи з файлу зі структурою
Для цього вам доведеться відредагувати php.ini
файл. Якщо ви використовуєте сервер ubuntu, це посилання Завантажити великий файл у phpMyAdmin може вам допомогти.
Я випадково натрапив на статтю, і це мені найбільше вдалося
Жорсткий диск »Програми» MAMP »bin» config.inc.php
$cfg[‘UploadDir’]
- вона буде виглядати так:$cfg['UploadDir'] = '';
$cfg['UploadDir'] = 'upload';
Потім, у цьому каталозі phpmyadmin, створіть нову папку та назвіть її завантаженою.
Візьміть великий файл .sql, який ви намагаєтеся імпортувати, і покладіть його в нову папку для завантаження.
Тепер, наступного разу, коли ви будете імпортувати базу даних у phpMyAdmin, ви побачите нове спадне поле прямо під стандартною областю перегляду у вашому розділі «Файл для імпорту».
Гаразд, ви використовуєте PHPMyAdmin, але іноді найкращий спосіб - через термінал:
mysql -h localhost -u root -p
(переключити root та localhost для розташування користувачів та бази даних)\. /path/to/your/file.sql
І це все. Тільки пам’ятайте, якщо ви знаходитесь на віддаленому сервері, ви повинні завантажити файл .sql в якусь папку.
відповідь для тих, хто має спільний хостинг. Найкраще використовувати цей маленький скрипт, який я щойно використав для імпорту 300 Мб файлу БД на свій сервер. Сценарій називається Big Dump.
надає сценарій для імпорту великих БД на сервери з обмеженими ресурсами
У MAMP ви можете завантажувати величезні файли, виконуючи:
створення нової папки в цьому каталозі / MAMP / bin / phpMyAdmin / "folderName"
а потім відредагуйте рядок 531 "/MAMP/bin/phpMyAdmin/config.inc.php":
$cfg['UploadDir']= 'folderName';
Скопіюйте файли .sql або .csv у цю папку.
Тепер у вас буде ще одна опція у "PhpMyAdmin": Виберіть із каталогу завантаження веб-сервера newFolder /: Ви можете вибрати свій файл та імпортувати його.
Ви можете завантажити будь-який файл зараз !!
Найкращий спосіб завантажити великий файл, не використовуючи phpmyadmin. викликати phpmyadin спочатку завантажити файл за допомогою класу завантаження php, а потім виконати sql, що спричиняє більшу частину часу його очікування.
найкращий спосіб: ввести папку wamp> bin> mysql> dinrectory bin, потім написати цей рядок
mysql -u root -p списки назв <latestdb.sql тут - це ім'я бази даних спочатку створіть порожню базу даних, а latestdb.sql - це ваше ім'я файлу sql, де представлені ваші дані.
але одна важлива річ - якщо у вашому файлі бази даних є дані Unicode. вам потрібно відкрити файл latestdb.sql і один рядок перед будь-яким рядком. рядок:
ВСТАНОВИТИ ІМЕНИ utf8; тоді у вашому командному режимі запустіть цей код сценарію
Змініть налаштування сервера, щоб дозволити завантаження файлів розміром більше 12 Мб, і з вами все повинно бути. Зазвичай для завантаження файлів налаштування сервера встановлюються від 5 до 8 Мб.
Одним із рішень є використання командного рядка;
mysql -h yourhostname -u username -p databasename < yoursqlfile.sql
Просто переконайтеся, що шлях до SQL файлу для імпорту вказаний явно.
У моєму випадку я використав це;
mysql -h localhost -u root -p databasename < /home/ejalee/dumps/mysqlfile.sql
Вуаля! вам добре їхати.
Я створив PHP-скрипт, призначений для імпорту великих дампів бази даних, створених phpmyadmin. Він називається PETMI, і ви можете завантажити його тут [сторінка проекту] [сторінка gitlab] . Він протестований на базі даних об'ємом 1 Гб.
mysql workbench
ormysql Yog