$sql?=?"INSERT?INTO?`TABLE`(name,password)?VALUES
創新互聯建站2013年開創至今,先為樂平等服務建站,樂平等地企業,進行企業商務咨詢服務。為樂平企業網站制作PC+手機+微官網三網同步一站式服務解決您的所有建站問題。
('張三','123'),
('李四','123'),
('王五','123'),
('趙六','123'),
('田七','123')........";
安照上面的方式插入數據庫是效率更高,速度更快
望采納 Thx
通過導入文件的方式插入,文件可以用其他方式先生成,比如使用java,來生成data1.txt,然后使用下面的sql語句:
load data local infile 'd:/data1.txt' replace into table hk_acinfo lines terminated by '\\r\\n'
使用這個方法,我插入過1千萬以上的數據,如果沒有網絡影響的話,每秒1M+/s的速度寫入,很快的
1 索引可以先去了 這樣會快點 插入完畢之后再重建索引
2 不要1個insert一條數據 可以一條長長的insert 里面包含1000條數據 做一次插入操作,這樣快很多
mysql5的手冊中提到,插入一條記錄,所需的時間比例大概是:
連接:(3)
發送查詢給服務器:(2)
分析查詢:(2)
插入記錄:(1x記錄大小)
插入索引:(1x索引)
關閉:(1)
并且表的大小以logN(B樹)的速度減慢索引的插入,因此提高插入速度的方法大概有以下7種:
一個insert語句包含多個value值;
使用insert delayed方法;
使用insert into ...values(select ...from),即select的同時執行insert;
使用load data infile;
先禁掉索引,插入后再創建索引;
寫鎖表,插入,解鎖。原因是索引緩存區僅在所有insert語句完成后才刷新到磁盤上一次;
增加key_buffer_size值來擴大鍵高速緩沖區。
你好,
linux如下設置內存盤:mount -t ramfs none /ram默認使用內存一半如果內存不夠大,系統有多個硬盤,則把mysql應用程序和data目錄分開到不同硬盤上。2、mysql的表設置為myiasm,比同等條件下的innodb能快20倍以上3、導入完成以后才創建數據庫索引4、導入完成以后根據需要轉換為其他engine,比如innodb5、多條數據插入一個表,可以使用多記錄方式:insert into tablename values('xxx','xxx'),('yyy','yyy')...;6、如果多個mysql執行導入,可以使用delayedinsert delayed into tablename values('sss','ssss');7、大文件sql文件可以用split分成多份再導8、同等條件下,redhat比ubuntu強很多(幾乎肯定)
希望回答對您有幫助.
如果原表很大,插入數據會非常慢,建議插入到臨時表,然后用一個語句(INSERT
INTO
XXX
SELECT
*
FTOM
TMPXXX)把數據插入,這樣速度會快一點,如果想更快,需要減少不必要的索引,如果大批量的插入,可以插入前刪除索引,插入后重新建立。
分享名稱:mysql怎么插入速度,mysql速度快嗎
文章分享:http://m.newbst.com/article42/hseehc.html
成都網站建設公司_創新互聯,為您提供外貿建站、外貿網站建設、網站策劃、網站收錄、標簽優化、域名注冊
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯