PHP中關於資料庫的應用是重點內容,以下是本站小編精心為大家整理的phpmyadmin匯入匯出資料庫檔案最大限制的解決方法,希望對大家有所幫助!更多內容請關注應屆畢業生網!
一般網站經常用phpmyadmin備份和恢復資料庫,但預設總是限制了16M。網站資料一多就不行了。
解決方法如下:
(1)修改適用自己有伺服器的人
大多數都修改中的upload_max_filesize,但修改了這個以後,還是提示這個問題;
那麼更改如下幾處:
修改
file_uploads on 是否允許通過HTTP上傳檔案的開關。預設為ON即是開
upload_tmp_dir 檔案上傳至伺服器上儲存臨時檔案的地方,如果沒指定就會用系統預設的臨時資料夾
upload_max_filesize 20m 望文生意,即允許上傳檔案大小的最大值。預設為2M
post_max_size 30m 指通過表單POST給PHP的所能接收的最大值,包括表單裡的所有值。預設為8M
說明
一般地,設定好上述四個引數後,在網路正常的情況下,上傳<=8M的檔案是不成問題
但如果要上傳>8M的大體積檔案,只設置上述四項還一定能行的通。除非你的網路真有100M/S的上傳高速,否則你還得繼續設定下面的引數。
max_execution_time 300 每個PHP頁面執行的最大時間值(秒),預設30秒
max_input_time 300 每個PHP頁面接收資料所需的最大時間,預設60秒
memory_limit 128m 每個PHP頁面所吃掉的最大記憶體,預設8M
設定 POST 資料所允許的最大大小。此設定也影響到檔案上傳。要上傳大檔案,該值必須大於 upload_max_filesize。
如果配置指令碼中激活了記憶體限制,memory_limit 也會影響檔案上傳。通常說,memory_limit 應該比 post_max_size 要大。
(2)這個方法很簡單,不需要修改引數, 適用把站放在虛擬主機的人。
開啟phpMyAdmin目錄下的配置檔案:
請注意其中的這兩個引數:
$cfg['UploadDir'] = ‘A‘;
$cfg['SaveDir'] = ‘B‘;
在phpMyAdmin目錄下自行建立資料夾A和B來對應UploadDir(匯入目錄)和SaveDir(匯出目錄)。
匯出操作:
1、登陸phpMyAdmin
2、在左側選中你需要備份匯出的資料庫
3、在右側視窗中找到“匯出”
4、在右側視窗底部選擇“保存於伺服器的 B/ 目錄”
5、選擇壓縮模式,提交“執行”即可在B資料夾中找到該資料庫的匯出資料。
匯入操作:
1、上傳準備匯入的資料檔案到A目錄
2、登陸phpMyAdmin
3、在左側選中你需要備份匯出的資料庫
4、在右側視窗中找到“Import”(匯出)
5、在右側視窗“網站伺服器上載目錄”中選擇需要匯入的資料檔案,提交“執行”完成匯入。
【拓展閱讀】MySql管理的一點心得
MySQL資料庫是中小型網站後臺資料庫的`首選,因為它對非商業應用是免費的.網站開發者可以搭建一個"Linux+Apache+PHP+MySql" 平臺,這是一個最省錢的高效平臺.在使用MySql進行開發時,MySql自帶的文件對於新手來說是份很好的參考資料.本文是我在使用MySql中的小小心得。
當前一般使用者的開發環境多是Windows或Linux,使用者可以到下載相關版本進行安裝,在 windows中MySql以服務形式存在,在使用前應確保此服務已經啟動,未啟動可用net start mysql命令啟動。而Linux中啟動時可用“/etc/rc.d/init.d/mysqld start"命令,注意啟動者應具有管理員許可權。
剛安裝好的MySql包含一個含空密碼的root帳戶和一個匿名帳戶,這是很大的安全隱患,對於一些重要的應用我們應將安全性儘可能提高,在這裡應把匿名帳戶刪除、 root帳戶設定密碼,可用如下命令進行:
use mysql;
delete from User where User="";
update User set Password=PASSWORD('newpassword') where User='root';
如果要對使用者所用的登入終端進行限制,可以更新User表中相應使用者的Host欄位,在進行了以上更改後應重新啟動資料庫服務,此時登入時可用如下類似命令:
mysql -uroot -p;
mysql -uroot -pnewpassword;
mysql mydb -uroot -p;
mysql mydb -uroot -pnewpassword;
上面命令引數是常用引數的一部分,詳細情況可參考文件。此處的mydb是要登入的資料庫的名稱。
在進行開發和實際應用中,使用者不應該只用root使用者進行連線資料庫,雖然使用root使用者進行測試時很方便,但會給系統帶來重大安全隱患,也不利於管理技術的提高。我們給一個應用中使用的使用者賦予最恰當的資料庫許可權。如一個只進行資料插入的使用者不應賦予其刪除資料的許可權。MySql的使用者管理是通過 User表來實現的,新增新使用者常用的方法有兩個,一是在User表插入相應的資料行,同時設定相應的許可權;二是通過GRANT命令建立具有某種許可權的使用者。其中GRANT的常用用法如下:
grant all on mydb.* to NewUserName@HostName identified by "password" ;
grant usage on *.* to NewUserName@HostName identified by "password";
grant select,insert,update on mydb.* to NewUserName@HostName identified by "password";
grant update,delete on Table to NewUserName@HostName identified by "password";
若要給此使用者賦予他在相應物件上的許可權的管理能力,可在GRANT後面新增WITH GRANT OPTION選項。而對於用插入User表新增的使用者,Password欄位應用PASSWORD 函式進行更新加密,以防不軌之人竊看密碼。對於那些已經不用的使用者應給予清除,許可權過界的使用者應及時回收許可權,回收許可權可以通過更新User表相應欄位,也可以使用REVOKE操作。
全域性管理許可權:
file: 在MySQL伺服器上讀寫檔案。
PROCESS: 顯示或殺死屬於其它使用者的服務執行緒。
RELOAD: 過載訪問控制表,重新整理日誌等。
SHUTDOWN: 關閉MySQL服務。
資料庫/資料表/資料列許可權:
ALTER: 修改已存在的資料表(例如增加/刪除列)和索引。
CREATE: 建立新的資料庫或資料表。
DELETE: 刪除表的記錄。
DROP: 刪除資料表或資料庫。
INDEX: 建立或刪除索引。
INSERT: 增加表的記錄。
SELECT: 顯示/搜尋表的記錄。
UPDATE: 修改表中已存在的記錄。
特別的許可權:
ALL: 允許做任何事(和root一樣)。
USAGE: 只允許登入--其它什麼也不允許做。
最後給出本人在RedHat9.0下的MySql操作演示:
選用資料庫的root使用者登入
[weiwen@weiwenlinux]$mysql -uroot -p
Enter password:MyPassword
mysql>create database mydb;
Query OK, 1 row affected (0.02 sec)
mysql>use mydb;
Database changed
mysql>create table TestTable(Id int aut_increment primary key,
UserName varchar(16) not null,
Address varchar(255));
Query OK, 0 rows affected (0.02 sec)
mysql>grant all on mydb.* to test@localhost identified by "test";
Query OK, 0 rows affected (0.01 sec)
mysql>quit
Bye
[weiwen@weiwenlinux]$mysql mydb -utest -ptest
其中是用vi編輯好的SQL指令碼,其內容為:
Insert into TestTable(UserName,Address)values('Tom','shanghai');
Insert into TestTable(UserName,Address)values('John','beijing');
select * from TestTable;
執行已經編輯好的SQL指令碼可以用source filename 或 . filename。
以上只是對新手的簡單練習,要成為一個數據庫好手,當以孜孜不倦地追求知識,不斷地思考、嘗試、再思考。