Tôi muốn nhập tệp sql có dung lượng khoảng 12 mb. Nhưng nó gây ra vấn đề trong khi tải. Có cách nào để tải nó lên mà không cần chia nhỏ tệp sql không?
Tôi muốn nhập tệp sql có dung lượng khoảng 12 mb. Nhưng nó gây ra vấn đề trong khi tải. Có cách nào để tải nó lên mà không cần chia nhỏ tệp sql không?
Câu trả lời:
Cố gắng nhập nó từ bảng điều khiển mysql theo sở thích của hệ điều hành của bạn.
mysql -u {DB-USER-NAME} -p {DB-NAME} < {db.file.sql path}
hoặc nếu nó nằm trên một máy chủ từ xa, hãy sử dụng cờ -h để chỉ định máy chủ.
mysql -u {DB-USER-NAME} -h {MySQL-SERVER-HOST-NAME} -p {DB-NAME} < {db.file.sql path}
mysql
trên máy chủ của bạn chỉ với một lần di chuyển. Cảm ơn các bạn vì đã giúp đỡ! (Ngoài ra, tôi không cần dấu ngoặc)
3 điều bạn phải làm:
trong php.ini
cài đặt php của bạn (lưu ý: tùy thuộc vào việc bạn muốn nó cho CLI, apache hay nginx, hãy tìm php.ini phù hợp để thao tác)
post_max_size=500M
upload_max_filesize=500M
memory_limit=900M
hoặc đặt các giá trị khác.
Khởi động lại / tải lại apache nếu bạn đã cài đặt apache hoặc php-fpm cho nginx nếu bạn sử dụng nginx.
Máy chủ từ xa?
cũng tăng max_execution_time
, vì sẽ mất thời gian để tải tệp lên.
Cài đặt NGINX?
bạn sẽ phải thêm: client_max_body_size 912M;
trong /etc/nginx/nginx.conf
với http{...}
khối
/etc/php/7.1/apache2/php.ini
không hoạt động
phpinfo()
và xác minh rằng các giá trị đã được thiết lập một cách chính xác và máy chủ đã được khởi động lại
Chỉnh sửa tệp config.inc.php nằm trong thư mục phpmyadmin. Trong trường hợp của tôi, nó được đặt tại C:\wamp\apps\phpmyadmin3.2.0.1\config.inc.php
.
Tìm dòng có $cfg['UploadDir']
trên đó và cập nhật nó lên$cfg['UploadDir'] = 'upload';
Sau đó, tạo một thư mục có tên 'tải lên' trong thư mục phpmyadmin (đối với tôi, tại C:\wamp\apps\phpmyadmin3.2.0.1\upload\
).
Sau đó, đặt tệp SQL lớn mà bạn đang cố gắng nhập vào upload
thư mục mới . Bây giờ khi bạn truy cập trang nhập db trong bảng điều khiển phpmyadmin, bạn sẽ thấy một trình đơn thả xuống mà trước đây không có - nó chứa tất cả các tệp sql trong thư mục tải lên mà bạn vừa tạo. Bây giờ bạn có thể chọn mục này và bắt đầu nhập.
Nếu bạn không sử dụng WAMP trên Windows, thì tôi chắc chắn rằng bạn sẽ có thể thích ứng với môi trường của mình mà không gặp quá nhiều khó khăn.
Tham khảo: http://daipratt.co.uk/importing-large-files-into-mysql-with-phpmyadmin/comment-page-4/
config.default.php
, cùng một dir, đang sử dụng phpmyadmin phiên bản 4.6.4
libraries/config.default.php
Giải pháp cho NGƯỜI DÙNG LINUX (chạy với sudo)
Tạo thư mục 'tải lên' và 'lưu':
mkdir /etc/phpmyadmin/upload
mkdir /etc/phpmyadmin/save
chmod a+w /etc/phpmyadmin/upload
chmod a+w /etc/phpmyadmin/save
Sau đó chỉnh sửa tệp cấu hình của phpmyadmin:
gedit /etc/phpmyadmin/config.inc.php
Cuối cùng thêm đường dẫn tuyệt đối cho cả thư mục 'tải lên' và 'lưu':
$cfg['UploadDir'] = '/etc/phpmyadmin/upload';
$cfg['SaveDir'] = '/etc/phpmyadmin/save';
Bây giờ, chỉ cần thả các tệp vào /etc/phpmyadmin/upload
thư mục và sau đó bạn sẽ có thể chọn chúng từ phpmyadmin.
Hy vọng điều này giúp đỡ.
File could not be read!
thông báo khi tôi nhấp vào nút gửi trên biểu mẫu tải lên. Đang khắc phục sự cố này ngay bây giờ.
sudo chmod 777 your-filename.sql
Chỉ cần một dòng là bạn đã hoàn tất (đảm bảo rằng lệnh mysql có sẵn dưới dạng toàn cục hoặc chỉ cần đi tới thư mục cài đặt mysql và nhập vào thư mục bin)
mysql -u database_user_name -p -D database_name < complete_file_path_with_file_name_and_extension
Đây
u
viết tắt của Người dùngp
viết tắt của Mật khẩuD
viết tắt của Database--- ĐỪNG QUÊN BỔ SUNG <
KÝ KẾT SAU TÊN CƠ SỞ DỮ LIỆU ---
Đường dẫn tệp hoàn chỉnh với tên và phần mở rộng có thể giống như
c:\folder_name\"folder name"\sql_file.sql
--- NẾU THƯ MỤC VÀ TÊN TẬP TIN CỦA BẠN CHỨA KHÔNG GIAN HƠN GIỮA HỌ SỬ DỤNG BÁO GIÁ ĐÔI ---
Mẹo và Lưu ý: Bạn có thể viết mật khẩu của mình sau -p
nhưng điều này không được khuyến khích vì nó sẽ hiển thị cho những người khác đang xem màn hình của bạn tại thời điểm đó, nếu bạn không ghi vào đó, nó sẽ hỏi bạn khi nào bạn sẽ thực hiện lệnh bằng cách nhấn enter.
Tạo một tệp zip hoặc tệp tar và tải lên trong phpmyadmin đó là nó ..!
Tôi có thể nhập một .sql
tệp lớn bằng cách có cấu hình sau trong httpd.conf
tệp:
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>
Bạn sẽ phải chỉnh sửa tệp php.ini. thay đổi phần sau upload_max_filesize
post_max_size
để phù hợp với kích thước tệp của bạn.
Đang thử chạy phpinfo()
để xem giá trị hiện tại của chúng. Nếu bạn không có quyền thay đổi trực tiếp tệp php.ini, hãy thử ini_set ()
Nếu đó cũng không phải là một lựa chọn, bạn có thể muốn thử bigdump .
Tôi không hiểu tại sao không ai đề cập đến cách dễ nhất .... chỉ cần chia nhỏ tệp lớn bằng http://www.rusiczki.net/2007/01/24/sql-dump-file-splitter/ và sau khi thực hiện vie mySQL admin các tệp được tạo riêng biệt bắt đầu từ tệp có Cấu trúc
Vì vậy, bạn sẽ phải chỉnh sửa php.ini
tệp, Nếu bạn đang sử dụng máy chủ ubuntu, đây là liên kết Tải lên tệp lớn trong phpMyAdmin có thể giúp bạn.
Tôi tình cờ đọc được một bài báo và điều này phù hợp nhất với tôi
Ổ cứng »Ứng dụng» MAMP »bin» config.inc.php
$cfg[‘UploadDir’]
- nó sẽ giống như sau:$cfg['UploadDir'] = '';
$cfg['UploadDir'] = 'upload';
Sau đó, trong phpmyadmin dir đó, tạo một thư mục mới và đặt tên cho nó tải lên.
Lấy tệp .sql lớn mà bạn đang cố nhập và đặt nó vào thư mục tải lên mới đó.
Bây giờ, vào lần tiếp theo bạn nhập cơ sở dữ liệu vào phpMyAdmin, bạn sẽ thấy một trường thả xuống mới ngay bên dưới vùng duyệt tiêu chuẩn trong phần “Tệp cần nhập”.
Ok bạn sử dụng PHPMyAdmin nhưng đôi khi cách tốt nhất là thông qua terminal:
mysql -h localhost -u root -p
(chuyển root và localhost cho người dùng và vị trí cơ sở dữ liệu)\. /path/to/your/file.sql
Và đó là nó. Chỉ cần nhớ nếu bạn đang ở trong một máy chủ từ xa, bạn phải tải tệp .sql lên một số thư mục.
câu trả lời cho những người có chia sẻ lưu trữ. Tốt nhất nên sử dụng tập lệnh nhỏ này mà tôi vừa sử dụng để nhập tệp DB 300mb vào máy chủ của mình. Kịch bản có tên là Big Dump.
cung cấp một tập lệnh để nhập các DB lớn trên các máy chủ giới hạn tài nguyên
Trong MAMP, Bạn có thể tải các tệp lớn bằng cách:
tạo một thư mục mới trong thư mục này / MAMP / bin / phpMyAdmin / "folderName"
và sau đó chỉnh sửa "/MAMP/bin/phpMyAdmin/config.inc.php" dòng 531:
$cfg['UploadDir']= 'folderName';
Sao chép Tệp .sql hoặc .csv của bạn vào thư mục này.
Bây giờ bạn sẽ có một tùy chọn khác trong "PhpMyAdmin": Chọn từ thư mục tải lên máy chủ web newFolder /: Bạn có thể chọn tệp của mình và nhập nó.
Bạn có thể tải bất kỳ tệp nào ngay bây giờ !!
Cách tốt nhất để tải lên một tệp lớn không sử dụng phpmyadmin. gây ra phpmyadin lúc đầu tải lên tệp bằng cách sử dụng lớp tải lên php sau đó thực thi sql khiến phần lớn thời gian của nó xảy ra.
cách tốt nhất là: nhập thư mục wamp> bin> mysql> bin dirrectory rồi viết dòng này
mysql -u root -p listnames <lastdb.sql ở đây listnames là tên cơ sở dữ liệu lúc đầu hãy tạo cơ sở dữ liệu trống và mới nhấtdb.sql là tên tệp sql của bạn nơi dữ liệu của bạn hiển thị.
nhưng một điều quan trọng là nếu tệp cơ sở dữ liệu của bạn có dữ liệu unicode. bạn phải mở tệp newdb.sql của mình và một dòng trước bất kỳ dòng nào. dòng là:
ĐẶT TÊN utf8; thì chế độ lệnh của bạn chạy mã tập lệnh này
Thay đổi cài đặt máy chủ của bạn để cho phép tải lên tệp lớn hơn 12 mb và bạn sẽ ổn. Thông thường, cài đặt máy chủ được đặt thành 5 đến 8 mb để tải lên tệp.
Một giải pháp là sử dụng dòng lệnh;
mysql -h yourhostname -u username -p databasename < yoursqlfile.sql
Chỉ cần đảm bảo đường dẫn đến tệp SQL để nhập được nêu rõ ràng.
Trong trường hợp của tôi, tôi đã sử dụng cái này;
mysql -h localhost -u root -p databasename < /home/ejalee/dumps/mysqlfile.sql
Thì đấy! bạn tốt để đi.
Tôi đã tạo một tập lệnh PHP được thiết kế để nhập các kho cơ sở dữ liệu lớn được tạo bởi phpmyadmin. Nó được gọi là PETMI và bạn có thể tải xuống tại đây [trang dự án] [trang gitlab] . Nó đã được thử nghiệm với cơ sở dữ liệu 1GB.
mysql workbench
hoặcmysql Yog