LOAD DATA INFILE
ÕâÊÇÎÒÃÇÒª½éÉܵÄ×îºóÒ»¸öµ¼ÈëÊý¾Ýµ½MySQLÊý¾Ý¿âÖеķ½·¨¡£Õâ¸öÃüÁîÓëmysqlimport·Ç³£ÏàËÆ£¬µ«Õâ¸ö·½·¨¿ÉÒÔÔÚmysqlÃüÁîÐÐÖÐʹÓá£Ò²¾ÍÊÇ˵Äú¿ÉÒÔÔÚËùÓÐʹÓÃAPIµÄ³ÌÐòÖÐʹÓÃÕâ¸öÃüÁʹÓÃÕâÖÖ·½·¨£¬Äú¾Í¿ÉÒÔÔÚÓ¦ÓóÌÐòÖе¼ÈëÄúÏëÒªµ¼ÈëµÄÊý¾Ý¡£ ʹÓÃÕâ¸öÃüÁî֮ǰ£¬mysqld½ø³Ì£¨·þÎñ£©±ØÐëÒѾÔÚÔËÐС£
Æô¶¯mysqlÃüÁîÐУº
bin/mysql –p
°´ÌáʾÊäÈëÃÜÂ룬³É¹¦½øÈëmysqlÃüÁîÐÐÖ®ºó£¬ÊäÈëÏÂÃæµÄÃüÁ
USE Meet_A_Geek;
LOAD DATA INFILE "/home/mark/data.sql" INTO TABLE Orders;
¼òµ¥µÄ½²£¬ÕâÑù½«»á°ÑÎļþdata.sqlÖеÄÄÚÈݵ¼Èëµ½±íOrdersÖУ¬Èçmysqlimport¹¤¾ßÒ»Ñù£¬Õâ¸öÃüÁîÒ²ÓÐһЩ¿ÉÒÔÑ¡ÔñµÄ²ÎÊý¡£±ÈÈçÄúÐèÒª°Ñ×Ô¼ºµÄµçÄÔÉϵÄÊý¾Ýµ¼Èëµ½Ô¶³ÌµÄÊý¾Ý¿â·þÎñÆ÷ÖУ¬Äú¿ÉÒÔʹÓÃÏÂÃæµÄÃüÁ
LOAD DATA LOCAL INFILE "C:\MyDocs\SQL.txt" INTO TABLE Orders;
ÉÏÃæµÄLOCAL²ÎÊý±íʾÎļþÊDZ¾µØµÄÎļþ£¬·þÎñÆ÷ÊÇÄúËùµÇ½µÄ·þÎñÆ÷¡£ ÕâÑù¾ÍʡȥÁËʹÓÃftpÀ´ÉÏ´«Îļþµ½·þÎñÆ÷£¬MySQLÌæÄãÍê³ÉÁË. ÄúÒ²¿ÉÒÔÉèÖòåÈëÓï¾äµÄÓÅÏȼ¶£¬Èç¹ûÄúÒª°ÑËü±ê¼ÇΪµÍÓÅÏȼ¶£¨LOW_PRIORITY£©£¬ÄÇôMySQL½«»áµÈµ½Ã»Ó ......
1.¼ì²éÒÔǰ°²×°µÄMySQL,Ð¶ÔØ¡£
rpm -qa|grep -i mysql
rpm -e XXXXX
×¢Èç¹û³öÏÖÁ½ÌõÏàͬµÄ£¬ÔòʹÓÃrpm -e --allmatches
2.°²×°rpm°ü¡£
rpm -ivh MySQL-server-community-5.1.37-0.rhel5.x86_64.rpm
rpm -ivh MySQL-shared-community-5.1.37-0.rhel5.x86_64.rpm
rpm -ivh MySQL-devel-community-5.1.37-0.rhel5.x86_64.rpm
rpm -ivh MySQL-client-community-5.1.37-0.rhel5.x86_64.rpm
3.cp ²ÎÊýÎļþµ½ /etc/my.cnf
find / -name "my*.cnf"
Ìí¼Ó²ÎÊý
transaction-isolation=READ-COMMITTED
default-storage-engine=INNODB
innodb_flush_log_at_trx_commit=2
4.¸üÐÂȨÏÞ¼°Óû§
mysql -u root -p
use mysql;
select user,host from user;
delete from user where user <> 'root';
delete from user where host <> 'localhost';
update user set host ='%' where user ='root';
select user,host from user;
¸üÐÂuser±íµ½ÈçÏÂ״̬
mysql> select user,host from user;
+------+------+
| user | host |
+------+------+
| root | % |
+------+------+
1 row in set (0.00 sec)
´´½¨Óû§
grant sele ......
1.¼ì²éÒÔǰ°²×°µÄMySQL,Ð¶ÔØ¡£
rpm -qa|grep -i mysql
rpm -e XXXXX
×¢Èç¹û³öÏÖÁ½ÌõÏàͬµÄ£¬ÔòʹÓÃrpm -e --allmatches
2.°²×°rpm°ü¡£
rpm -ivh MySQL-server-community-5.1.37-0.rhel5.x86_64.rpm
rpm -ivh MySQL-shared-community-5.1.37-0.rhel5.x86_64.rpm
rpm -ivh MySQL-devel-community-5.1.37-0.rhel5.x86_64.rpm
rpm -ivh MySQL-client-community-5.1.37-0.rhel5.x86_64.rpm
3.cp ²ÎÊýÎļþµ½ /etc/my.cnf
find / -name "my*.cnf"
Ìí¼Ó²ÎÊý
transaction-isolation=READ-COMMITTED
default-storage-engine=INNODB
innodb_flush_log_at_trx_commit=2
4.¸üÐÂȨÏÞ¼°Óû§
mysql -u root -p
use mysql;
select user,host from user;
delete from user where user <> 'root';
delete from user where host <> 'localhost';
update user set host ='%' where user ='root';
select user,host from user;
¸üÐÂuser±íµ½ÈçÏÂ״̬
mysql> select user,host from user;
+------+------+
| user | host |
+------+------+
| root | % |
+------+------+
1 row in set (0.00 sec)
´´½¨Óû§
grant sele ......
½â¾ö·½·¨£º
1¡£ ¸Ä±í·¨¡£¿ÉÄÜÊÇÄãµÄÕʺŲ»ÔÊÐí´ÓÔ¶³ÌµÇ½£¬Ö»ÄÜÔÚlocalhost¡£Õâ¸öʱºòÖ»ÒªÔÚlocalhostµÄÄÇ̨µçÄÔ£¬µÇÈëmysqlºó£¬¸ü¸Ä "mysql" Êý¾Ý¿âÀïµÄ "user" ±íÀïµÄ "host" Ï´Ó"localhost"¸Ä³Æ"%"
mysql -u root -pvmwaremysql>use mysql;
mysql>update user set host = '%' where user = 'root';
mysql>select host, user from user;
mysql>FLUSH RIVILEGES
(ǧÍò²»ÒªÍüÁË!)
2. ÊÚȨ·¨¡£ÀýÈ磬ÄãÏëmyuserʹÓÃmypassword´ÓÈκÎÖ÷»úÁ¬½Óµ½mysql·þÎñÆ÷µÄ»°¡£
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WI
TH GRANT OPTION;
Èç¹ûÄãÏëÔÊÐíÓû§myuser´ÓipΪ192.168.1.6µÄÖ÷»úÁ¬½Óµ½mysql·þÎñÆ÷£¬²¢Ê¹ÓÃmypassword×÷ΪÃÜÂë
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY
'mypassword' WITH GRANT OPTION;
ÁíÍâÒ»ÖÖ·½·¨,²»¹ýÎÒûÓÐÇ××ÔÊÔ¹ýµÄ,ÔÚcsdn.netÉÏÕÒµÄ,¿ÉÒÔ¿´Ò»ÏÂ.
ÔÚ°²×°mysqlµÄ»úÆ÷ÉÏÔËÐУº
1¡¢d:\mysql\bin\>mysql -h localhost&nbs ......
Á½ÖÖÀàÐÍ×îÖ÷ÒªµÄ²î±ð¾ÍÊÇInnodb Ö§³ÖÊÂÎñ´¦ÀíÓëÍâ¼üºÍÐм¶Ëø.¶øMyISAM²»Ö§³Ö.ËùÒÔMyISAMÍùÍù¾ÍÈÝÒ×±»ÈËÈÏΪֻÊʺÏÔÚСÏîÄ¿ÖÐʹÓá£
ÎÒ×÷ΪʹÓÃMySQLµÄÓû§½Ç¶È³ö·¢£¬InnodbºÍMyISAM¶¼ÊDZȽÏϲ»¶µÄ£¬µ«ÊÇ´ÓÎÒĿǰÔËάµÄÊý¾Ý¿âƽ̨Ҫ´ïµ½ÐèÇó£º99.9%µÄÎȶ¨ÐÔ£¬·½±ãµÄÀ©Õ¹ÐԺ͸߿ÉÓÃÐÔÀ´ËµµÄ»°£¬MyISAM¾ø¶ÔÊÇÎÒµÄÊ×Ñ¡¡£
ÔÒòÈçÏ£º
1¡¢Ê×ÏÈÎÒĿǰƽ̨ÉϳÐÔØµÄ´ó²¿·ÖÏîÄ¿ÊǶÁ¶àдÉÙµÄÏîÄ¿£¬¶øMyISAMµÄ¶ÁÐÔÄÜÊDZÈInnodbÇ¿²»Éٵġ£
2¡¢MyISAMµÄË÷ÒýºÍÊý¾ÝÊÇ·Ö¿ªµÄ£¬²¢ÇÒË÷ÒýÊÇÓÐѹËõµÄ£¬ÄÚ´æÊ¹ÓÃÂʾͶÔÓ¦Ìá¸ßÁ˲»ÉÙ¡£ÄܼÓÔØ¸ü¶àË÷Òý£¬¶øInnodbÊÇË÷ÒýºÍÊý¾ÝÊǽôÃÜÀ¦°óµÄ£¬Ã»ÓÐʹÓÃѹËõ´Ó¶ø»áÔì³ÉInnodb±ÈMyISAMÌå»ýÅÓ´ó²»Ð¡¡£
3¡¢´Óƽ̨½Ç¶ÈÀ´Ëµ£¬¾³£¸ô1£¬2¸öÔ¾ͻᷢÉúÓ¦Óÿª·¢ÈËÔ±²»Ð¡ÐÄupdateÒ»¸ö±íwhereдµÄ·¶Î§²»¶Ô£¬µ¼ÖÂÕâ¸ö±íû·¨Õý³£ÓÃÁË£¬Õâ¸öʱºòMyISAMµÄÓÅÔ½ÐÔ¾ÍÌåÏÖ³öÀ´ÁË£¬Ëæ±ã´Óµ±Ì쿽±´µÄѹËõ°üÈ¡³ö¶ÔÓ¦±íµÄÎļþ£¬Ëæ±ã·Åµ½Ò»¸öÊý¾Ý¿âĿ¼Ï£¬È»ºódump³ÉsqlÔÙµ¼»Øµ½Ö÷¿â£¬²¢°Ñ¶ÔÓ¦µÄbinlog²¹ÉÏ¡£Èç¹ûÊÇInnodb£¬¿ÖŲ»¿ÉÄÜÓÐÕâô¿ìËÙ¶È£¬±ðºÍÎÒ˵ÈÃInnodb¶¨ÆÚÓõ¼³öxxx.sql»úÖÆ±¸·Ý£¬ÒòΪÎÒÆ½Ì¨ÉÏ×îСµÄÒ»¸öÊý¾Ý¿âʵÀýµÄÊý¾ÝÁ¿»ù±¾¶¼ÊǼ¸Ê®G´óС¡£
4¡¢´ÓÎÒ½Ó´¥µ ......
ÔÎÄÁ´½Ó http://database.51cto.com/art/200904/117957.htm
ÒÔÏÂÊÇÉæ¼°µ½²åÈë±í¸ñµÄ²éѯµÄ5ÖָĽø·½·¨£º
1)ʹÓÃLOAD DATA INFILE´ÓÎı¾ÏÂÔØÊý¾ÝÕ⽫±ÈʹÓòåÈëÓï¾ä¿ì20±¶¡£
2)ʹÓôøÓжà¸öVALUESÁбíµÄINSERTÓï¾äÒ»´Î²åÈ뼸ÐÐÕ⽫±ÈʹÓÃÒ»¸öµ¥ÐвåÈëÓï¾ä¿ì¼¸±¶¡£µ÷Õûbulk_insert_buffer_size±äÁ¿Ò²ÄÜÌá¸ß£¨Ïò°üº¬Ðеıí¸ñÖУ©²åÈëµÄËÙ¶È¡£
3)¿ÉÒÔ¶Ômyisam±í²¢ÐвåÈëConcurrent_insertϵͳ±äÁ¿¿ÉÒÔ±»ÉèÖÃÓÃÓÚÐÞ¸Äconcurrent-insert´¦Àí¡£¸Ã±äÁ¿Ä¬ÈÏÉèÖÃΪ1¡£Èç¹ûconcurrent_insert±»ÉèÖÃΪ0£¬²¢ÐвåÈë¾Í±»½ûÓá£Èç¹û¸Ã±äÁ¿±»ÉèÖÃΪ2£¬ÔÚ±íµÄÄ©¶Ë¿ÉÒÔ²¢ÐвåÈ룬¼´±ã¸Ã±íµÄijЩÐÐÒѾ±»É¾³ý¡£
4)ʹÓòåÈëÑÓ³Ù
Èç¹ûÄãµÄ¿Í»§²»ÄÜ»òÎÞÐèµÈ´ý²åÈëÍê³ÉµÄʱºò£¬ÕâÕкÜÓÐÓᣵ±ÄãʹÓÃMySQL´æ´¢£¬²¢¶¨ÆÚÔËÐÐÐèÒªºÜ³¤Ê±¼ä²ÅÄÜÍê³ÉµÄSELECTºÍUPDATEÓï¾äµÄʱºò£¬Äã»á·¢ÏÖÕâÖÖÇé¿öºÜ³£¼û¡£µ±¿Í»§Ê¹ÓòåÈëÑÓ³Ù£¬·þÎñÆ÷Á¢¿Ì·µ»Ø£¬Èç¹û±íûÓб»ÆäËûÏ̵߳÷Óã¬ÔòÐлáÁжӵȴý±»²åÈ롣ʹÓòåÈëÑÓ³ÙµÄÁíÒ»¸öºÃ´¦¾ÍÊÇ´Ó¶à¸ö¿Í»§²åÈëµÄÇé¿ö»á±»°ó¶¨²¢¼Ç¼ÔÚͬһ¸öblockÖС£Õ⽫±È´¦Àí¶à¸ö¶ÀÁ¢µÄ²åÈëÒª¿ìµÃ¶à¡£
5)²åÈë֮ǰ½«±íËø¶¨(Ö»Õë¶Ô·ÇÊÂÎñ´¦ÀíÐ͵ıí)
Õ⽫Ìá¸ßÊý¾Ý¿âÐÔÄÜ£¬ÒòΪË÷Òý»º³å ......
MySQLÓÐËÄÖÖBLOBÀàÐÍ:
¡¡¡¡·tinyblob:½ö255¸ö×Ö·û
¡¡¡¡·blob:×î´óÏÞÖÆµ½65K×Ö½Ú
¡¡¡¡·mediumblob:ÏÞÖÆµ½16M×Ö½Ú
¡¡¡¡·longblob:¿É´ï4GB
¡¡¡¡ÔÚÿ¸öMySQLµÄÎĵµ(´ÓMySQL4.0¿ªÊ¼)µÄ½éÉÜÖÐ,Ò»¸ölongblobÁеÄ×î´óÔÊÐí³¤¶ÈÒÀÀµÓÚÔÚ¿Í»§/·þÎñÆ÷ÐÒéÖпÉÅäÖõÄ×î´ó°üµÄ´óСºÍ¿ÉÓÃÄÚ´æÊý¡£
¡¡¡¡Äã¿ÉÄܶÔÔÚBLOBÖд洢´óÐÍÎļþ·Ç³£½÷É÷£¬µ«ÊÇÇë·ÅÐÄʹÓã¬MYSQLÌṩÁËÕâÑùµÄÁé»îÐÔ£¡×î´ó°üµÄ´óС¿ÉÈÝÒ×µØÖеÄÔÚÅäÖÃÎļþÖÐÉèÖá£ÀýÈç:
Ò»,Windowsͨ¹ýÎļþmy.ini (ÔÚϵͳÅÌ)
[mysqld]
set-variable = max_allowed_packet=10M
¶þ,linuxͨ¹ýetc/my.cnf
[mysqld]
max_allowed_packet = 16M
¡¡¡¡ÄãÄÜÖ¸¶¨¼¸ºõÈκÎÄãÐèÒªµÄ´óС¡£Ä¬ÈÏÊÇ1M¡£
......