MYSQL ×Ö·û¼¯¼°±àÂëÎÊÌâ
MySQLµÄ×Ö·û¼¯Ö§³Ö(Character Set Support)ÓÐÁ½¸ö·½Ã棺
×Ö·û¼¯(Character set)ºÍÁ¬½ÓУ¶Ô(Collation)¡£
¶ÔÓÚ×Ö·û¼¯µÄÖ§³Öϸ»¯µ½Ëĸö²ã´Î:
·þÎñÆ÷(server)£¬Êý¾Ý¿â(database)£¬Êý¾Ý±í(table)ºÍÁ¬½Ó(connection)¡£
1.MySQLĬÈÏ×Ö·û¼¯
MySQL¶ÔÓÚ×Ö·û¼¯µÄÖ¸¶¨¿ÉÒÔϸ»¯µ½Ò»¸öÊý¾Ý¿â£¬Ò»ÕÅ±í£¬Ò»ÁУ¬Ó¦¸ÃÓÃʲô×Ö·û¼¯¡£
µ«ÊÇ£¬´«Í³µÄ³ÌÐòÔÚ´´½¨Êý¾Ý¿âºÍÊý¾Ý±íʱ²¢Ã»ÓÐʹÓÃÄÇô¸´ÔÓµÄÅäÖã¬ËüÃÇÓõÄÊÇĬÈϵÄÅäÖã¬ÄÇô£¬Ä¬ÈϵÄÅäÖôӺζøÀ´ÄØ£¿
(1)±àÒëMySQL ʱ£¬Ö¸¶¨ÁËÒ»¸öĬÈϵÄ×Ö·û¼¯£¬Õâ¸ö×Ö·û¼¯ÊÇ latin1£»
(2)°²×°MySQL ʱ£¬¿ÉÒÔÔÚÅäÖÃÎļþ (my.ini) ÖÐÖ¸¶¨Ò»¸öĬÈϵĵÄ×Ö·û¼¯£¬Èç¹ûûָ¶¨£¬Õâ¸öÖµ¼Ì³Ð×Ô±àÒëʱָ¶¨µÄ£»
(3)Æô¶¯mysqld ʱ£¬¿ÉÒÔÔÚÃüÁîÐвÎÊýÖÐÖ¸¶¨Ò»¸öĬÈϵĵÄ×Ö·û¼¯£¬Èç¹ûûָ¶¨£¬Õâ¸öÖµ¼Ì³Ð×ÔÅäÖÃÎļþÖеÄÅäÖÃ,´Ëʱ character_set_server ±»É趨ΪÕâ¸öĬÈϵÄ×Ö·û¼¯£»
(4)µ±´´½¨Ò»¸öеÄÊý¾Ý¿âʱ£¬³ý·ÇÃ÷È·Ö¸¶¨£¬Õâ¸öÊý¾Ý¿âµÄ×Ö·û¼¯±»È±Ê¡É趨Ϊcharacter_set_server£»
(5)µ±Ñ¡¶¨ÁËÒ»¸öÊý¾Ý¿âʱ£¬character_set_database ±»É趨ΪÕâ¸öÊý¾Ý¿âĬÈϵÄ×Ö·û¼¯£»
(6)ÔÚÕâ¸öÊý¾Ý¿âÀï´´½¨Ò»Õűíʱ£¬±íĬÈϵÄ×Ö·û¼¯±»É趨Ϊ character_set_database£¬Ò²¾ÍÊÇÕâ¸öÊý¾Ý¿âĬÈϵÄ×Ö·û¼¯£»
(7)µ±ÔÚ±íÄÚÉèÖÃÒ»À¸Ê±£¬³ý·ÇÃ÷È·Ö¸¶¨£¬·ñÔò´ËÀ¸È±Ê¡µÄ×Ö·û¼¯¾ÍÊDZíĬÈϵÄ×Ö·û¼¯£»
¼òµ¥µÄ×ܽáһϣ¬Èç¹ûʲôµØ·½¶¼²»Ð޸ģ¬ÄÇôËùÓеÄÊý¾Ý¿âµÄËùÓбíµÄËùÓÐÀ¸Î»µÄ¶¼Óà latin1 ´æ´¢£¬²»¹ýÎÒÃÇÈç¹û°²×° MySQL£¬Ò»°ã¶¼»áÑ¡Ôñ¶àÓïÑÔÖ§³Ö£¬Ò²¾ÍÊÇ˵£¬°²×°³ÌÐò»á×Ô¶¯ÔÚÅäÖÃÎļþÖÐ°Ñ default_character_set ÉèÖÃΪ UTF-8£¬Õâ±£Ö¤ÁËȱʡÇé¿öÏ£¬ËùÓеÄÊý¾Ý¿âµÄËùÓбíµÄËùÓÐÀ¸Î»µÄ¶¼Óà UTF-8 ´æ´¢¡£
2.²é¿´Ä¬ÈÏ×Ö·û¼¯(ĬÈÏÇé¿öÏ£¬mysqlµÄ×Ö·û¼¯ÊÇlatin1(ISO_8859_1)
ͨ³££¬²é¿´ÏµÍ³µÄ×Ö·û¼¯ºÍÅÅÐò·½Ê½µÄÉ趨¿ÉÒÔͨ¹ýÏÂÃæµÄÁ½ÌõÃüÁ
mysql> SHOW VARIABLES LIKE 'character%';
+--------------------------+---------------------------------+
| Variable_name | Value &
Ïà¹ØÎĵµ£º
http://www.xhsd.com.cn/books/views.asp?plucode=711126281
Õâ±¾Êé±»³ÆÎªPHPºÍMySQLµÄ“Ê¥¾”£¬×Ðϸ¿´ÁËһϣ¬µÄÈ·Óкܶà¶Àµ½µÄµØ·½¡£
Ê×ÏÈ£¬ÄÚÈÝÃ÷È·Í»³ö¡£Õâ±¾ÊéµÄÄ¿µÄÊǶÔPHPºÍMySQL×öÉîÈëdz³öµÄ·ÖÎö£¬¶ÔÆäWebÓ¦ÓÃ×öÁ˽ÏÈ«ÃæµÄ²ûÊö£¬Àý×Ó¾µäʵÓá£
Æä´Î£¬Ð¡£PHP5.3£¬MySQLµÄ´æ´¢¹ý³ÌºÍ´æ´¢ÒýÇæ£¬Ajax¼¼ ......
·ÀÖ¹×¢ÈëµÄ¼¸ÖÖ°ì·¨
ÆäʵÔÀ´¾ÍÊÇÎÒÃÇÐèÒª¹ýÂËһЩÎÒÃdz£¼ûµÄ¹Ø¼ü×ֺͷûºÏÈ磺
Select£¬insert£¬update£¬delete£¬and£¬*£¬µÈµÈ
function inject_check($sql_str) {
return eregi('select|insert|update|delete|\'|\/\*|\*|\.\.\/|\.\/|union|into|load_file
|outfile', $sql_str); & ......
mysql> use information_schema
Database changed
mysql> select concat(round(sum(index_LENGTH)/(1024*1024),2),'MB') as 'Data Size' from tables where table_schema='bbs';
+-----------+
| Data Size |
+-----------+
| 0.00MB |
+-----------+
1 row in set (0.01 sec)
½âÊÍ£º
......
½ñÌìÐèÒª´ÓÔ¶³Ì·þÎñÆ÷downÒ»¸öuchomeµÄÊý¾Ý¿âÏÂÀ´£¬ÔÚ±¾µØ»¹Ô¡£
·¢ÏÖÒ»¸öºÜ²»Ë¬µÄÊÂÇ飺Զ³Ì8G£¬NºËµÄlinux»úÆ÷£¬±¸·Ý»¹Ô²Ù×÷˳ÁïÁïµÄ£¬¿ÉÊÇÔÚ±¾µØµÄwindows£¬2GÆÕͨPCÉÏ£¬²Å100MµÄÎļþ£¬ÓÃuchome×Ô´øµÄ·Ö¾í±¸·Ý»¹Ô£¬»ù±¾ÉÏÖм䶼»á¶Ïµô£¬ÒªÃ´Ìáʾ“Ö´ÐÐʱ¼ä¹ý³¤”£¨¸Ä³É200Ã룬·Ö¾íΪ20M¶¼²»ÐУ©£¬ÒªÃ´¾ÍÊ ......
mysql> desc aa;
+-------+---------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+
| id | int(11) | YES | | NULL | &n ......