MysqlÊý¾Ý¿âµÄ°²È«ÅäÖá¢ÊµÓü¼ÇÉ

January 9th, 2009 jsrk.com edit
1¡¢Ç°ÑÔ

¡¡¡¡MySQL ÊÇÍêÈ«ÍøÂ绯µÄ¿çƽ̨¹ØÏµÐÍÊý¾Ý¿âϵͳ£¬Í¬Ê±ÊǾßÓпͻ§»ú/·þÎñÆ÷Ìåϵ½á¹¹µÄ·Ö²¼Ê½Êý¾Ý¿â¹ÜÀíϵͳ¡£Ëü¾ßÓй¦ÄÜÇ¿¡¢Ê¹Óüò±ã¡¢¹ÜÀí·½±ã¡¢ÔËÐÐËٶȿ졢°²È«¿É¿¿ÐÔÇ¿µÈÓŵ㣬Óû§¿ÉÀûÓÃÐí¶àÓïÑÔ±àд·ÃÎÊMySQL Êý¾Ý¿âµÄ³ÌÐò£¬ÌرðÊÇÓëPHP¸üÊǻƽð×éºÏ£¬ÔËÓÃÊ®·Ö¹ã·º¡£

¡¡¡¡ÓÉÓÚMySQLÊÇ¶àÆ½Ì¨µÄÊý¾Ý¿â£¬ËüµÄĬÈÏÅäÖÃÒª¿¼ÂǸ÷ÖÖÇé¿ö϶¼ÄÜÊÊÓã¬ËùÒÔÔÚÎÒÃÇ×Ô¼ºµÄʹÓû·¾³ÏÂÓ¦¸Ã½øÐнøÒ»²½µÄ°²È«¼Ó¹Ì¡£×÷Ϊһ¸öMySQLµÄϵͳ¹ÜÀíÔ±£¬ÎÒÃÇÓÐÔðÈÎά»¤MySQLÊý¾Ý¿âϵͳµÄÊý¾Ý°²È«ÐÔºÍÍêÕûÐÔ¡£

¡¡¡¡MySQLÊý¾Ý¿âµÄ°²È«ÅäÖñØÐë´ÓÁ½¸ö·½ÃæÈëÊÖ£¬ÏµÍ³ÄÚ²¿°²È«ºÍÍâ²¿ÍøÂ簲ȫ£¬ÁíÍâÎÒÃÇ»¹½«¼òµ¥½éÉܱà³ÌʱҪעÒâµÄһЩÎÊÌâÒÔ¼°Ò»Ð©Ð¡ÇÏÃÅ¡£

¡¡¡¡2¡¢ÏµÍ³ÄÚ²¿°²È«

¡¡¡¡Ê×Ïȼòµ¥½éÉÜÒ»ÏÂMySQLÊý¾Ý¿âĿ¼½á¹¹¡£MySQL°²×°ºÃ£¬ÔËÐÐÁËmysql_db_install½Å±¾ÒÔºó¾Í»á½¨Á¢Êý¾ÝĿ¼ºÍ³õʼ»¯Êý¾Ý¿â¡£Èç¹ûÎÒÃÇÓÃMySQLÔ´Âë°ü°²×°£¬¶øÇÒ°²×°Ä¿Â¼ÊÇ/usr/local/mysql£¬ÄÇôÊý¾ÝĿ¼һ°ã»áÊÇ/usr/local/mysql/var¡£Êý¾Ý¿âϵͳÓÉһϵÁÐÊý¾Ý¿â×é³É£¬Ã¿¸öÊý¾Ý¿â°üº¬Ò»ÏµÁÐÊý¾Ý¿â±í¡£MySQLÊÇÓÃÊý¾Ý¿âÃûÔÚÊý¾ÝĿ¼½¨Á¢½¨Á¢Ò»¸öÊý¾Ý¿âĿ¼£¬¸÷Êý¾Ý¿â±í·Ö±ðÒÔÊý¾Ý¿â±íÃû×÷ΪÎļþÃû£¬À©Õ¹Ãû·Ö±ðΪMYD¡¢MYI¡¢frmµÄÈý¸öÎļþ·Åµ½Êý¾Ý¿âĿ¼ÖС£

¡¡¡¡MySQLµÄÊÚȨ±í¸øÊý¾Ý¿âµÄ·ÃÎÊÌṩÁËÁé»îµÄȨÏÞ¿ØÖÆ£¬µ«ÊÇÈç¹û±¾µØÓû§ÓµÓжԿâÎļþµÄ¶ÁȨÏ޵ϰ£¬¹¥»÷ÕßÖ»Ðè°ÑÊý¾Ý¿âĿ¼´ò°ü¿½×ߣ¬È»ºó¿½µ½×Ô¼º±¾»úµÄÊý¾ÝĿ¼Ï¾ÍÄÜ·ÃÎÊÇÔÈ¡µÄÊý¾Ý¿â¡£ËùÒÔMySQLËùÔÚµÄÖ÷»úµÄ°²È«ÐÔÊÇ×îÊ×ÒªµÄÎÊÌ⣬Èç¹ûÖ÷»ú²»°²È«£¬±»¹¥»÷Õß¿ØÖÆ£¬ÄÇôMySQLµÄ°²È«ÐÔÒ²ÎÞ´Ó̸Æð¡£Æä´Î¾ÍÊÇÊý¾ÝĿ¼ºÍÊý¾ÝÎļþµÄ°²È«ÐÔ£¬Ò²¾ÍÊÇȨÏÞÉèÖÃÎÊÌâ¡£

¡¡¡¡´ÓMySQLÖ÷վһЩÀϵÄbinary·¢ÐаæÀ´¿´£¬3.21.xx°æ±¾ÖÐÊý¾ÝĿ¼µÄÊôÐÔÊÇ775£¬ÕâÑù·Ç³£Î£ÏÕ£¬Èκα¾µØÓû§¶¼¿ÉÒÔ¶ÁÊý¾ÝĿ¼£¬ËùÒÔÊý¾Ý¿âÎļþºÜ²»°²È«¡£3.22.xx°æ±¾ÖÐÊý¾ÝĿ¼µÄÊôÐÔÊÇ770£¬ÕâÖÖÊôÐÔÒ²ÓÐЩΣÏÕ£¬±¾µØµÄͬ×éÓû§¼ÈÄܶÁÒ²ÄÜд£¬ËùÒÔÊý¾ÝÎļþÒ²²»°²È«¡£3.23.xx°æ±¾Êý¾ÝĿ¼µÄÊôÐÔÊÇ700£¬ÕâÑù¾Í±È½ÏºÃ£¬Ö»ÓÐÆô¶¯Êý¾Ý¿âµÄÓû§¿ÉÒÔ¶ÁдÊý¾Ý¿âÎļþ£¬±£Ö¤Á˱¾µØÊý¾ÝÎļþµÄ°²È«¡£

¡¡¡¡Èç¹ûÆô¶¯MySQLÊý¾Ý¿âµÄÓû§ÊÇmysql£¬ÄÇôÏóÈçϵÄĿ¼ºÍÎļþµÄÊǰ²È«µÄ£¬Çë×¢ÒâÊý¾ÝĿ¼¼°ÏÂÃæµÄÊôÐÔ£º

¡¡¡¡shell>ls -l /usr/local/mysql

¡¡¡¡total 40

¡¡¡¡drwxrwxr-x 2 root root 4096 Feb 27 20:07 bin

¡¡¡¡drwxrwxr-x 3 root root 4096 Feb 27 20:07 include

¡¡¡¡drwxrwxr-x 2 root root 4096 Feb 27 20:07 info drwxrwxr-x 3 root root 4096 Feb 27 20:07 lib drwxrwxr-x 2 root root 4096 Feb 27 20:07 libexec drwxrwxr-x 3 root root 4096 Feb 27 20:07 man drwxrwxr-x 6 root root 4096 Feb 27 20:07 mysql-test drwxrwxr-x 3 root root 4096 Feb 27 20:07 share drwxrwxr-x 7 root root 4096 Feb 27 20:07 sql-bench drwx------ 4 mysql mysql 4096 Feb 27 20:07 var

¡¡¡¡shell>ls -l /usr/local/mysql/var

¡¡¡¡total 8

¡¡¡¡drwx------ 2 mysql mysql 4096 Feb 27 20:08 mysql

¡¡¡¡drwx------ 2 mysql mysql 4096 Feb 27 20:08 test

¡¡¡¡shell>ls -l /usr/local/mysql/var/mysql

¡¡¡¡total 104

¡¡¡¡-rw------- 1 mysql mysql 0 Feb 27 20:08 columns_priv.MYD

¡¡¡¡-rw------- 1 mysql mysql 1024 Feb 27 20:08 columns_priv.MYI

¡¡¡¡-rw------- 1 mysql mysql 8778 Feb 27 20:08 columns_priv.frm

¡¡¡¡-rw------- 1 mysql mysql 302 Feb 27 20:08 db.MYD

¡¡¡¡-rw------- 1 mysql mysql 3072 Feb 27 20:08 db.MYI

¡¡¡¡-rw------- 1 mysql mysql 8982 Feb 27 20:08 db.frm

¡¡¡¡-rw------- 1 mysql mysql 0 Feb 27 20:08 func.MYD

¡¡¡¡-rw------- 1 mysql mysql 1024 Feb 27 20:08 func.MYI

¡¡¡¡-rw------- 1 mysql mysql 8641 Feb 27 20:08 func.frm

¡¡¡¡-rw------- 1 mysql mysql 0 Feb 27 20:08 host.MYD

¡¡¡¡-rw------- 1 mysql mysql 1024 Feb 27 20:08 host.MYI

¡¡¡¡-rw------- 1 mysql mysql 8958 Feb 27 20:08 host.frm

¡¡¡¡-rw------- 1 mysql mysql 0 Feb 27 20:08 tables_priv.MYD

¡¡¡¡-rw------- 1 mysql mysql 1024 Feb 27 20:08 tables_priv.MYI

¡¡¡¡-rw------- 1 mysql mysql 8877 Feb 27 20:08 tables_priv.frm

¡¡¡¡-rw------- 1 mysql mysql 428 Feb 27 20:08 user.MYD

¡¡¡¡-rw------- 1 mysql mysql 2048 Feb 27 20:08 user.MYI

¡¡¡¡-rw------- 1 mysql mysql 9148 Feb 27 20:08 user.frm

¡¡¡¡Èç¹ûÕâЩÎļþµÄÊôÖ÷¼°ÊôÐÔ²»ÊÇÕâÑù£¬ÇëÓÃÒÔÏÂÁ½¸öÃüÁîÐÞÕýÖ®£º

¡¡¡¡shell>chown -R mysql.mysql /usr/local/mysql/var

¡¡¡¡shell>chmod -R go-rwx /usr/local/mysql/var

¡¡¡¡ÓÃrootÓû§Æô¶¯Ô¶³Ì·þÎñÒ»Ö±Êǰ²È«´ó¼É£¬ÒòΪÈç¹û·þÎñ³ÌÐò³öÏÖÎÊÌ⣬Զ³Ì¹¥»÷Õß¼«ÓпÉÄÜ»ñµÃÖ÷»úµÄÍêÈ«¿ØÖÆÈ¨¡£MySQL´Ó3.23.15°æ±¾¿ªÊ¼Ê±×÷ÁËССµÄ¸Ä¶¯£¬Ä¬Èϰ²×°ºó·þÎñÒªÓÃmysqlÓû§À´Æô¶¯£¬²»ÔÊÐírootÓû§Æô¶¯¡£Èç¹û·ÇÒªÓÃrootÓû§À´Æô¶¯£¬±ØÐë¼ÓÉÏ--user=rootµÄ²ÎÊý(./safe_mysqld --user=root &)¡£ÒòΪMySQLÖÐÓÐLOAD DATA INFILEºÍSELECT ... INTO OUTFILEµÄSQLÓï¾ä£¬Èç¹ûÊÇrootÓû§Æô¶¯ÁËMySQL·þÎñÆ÷£¬ÄÇô£¬Êý¾Ý¿âÓû§¾ÍÓµÓÐÁËrootÓû§µÄдȨÏÞ¡£²»¹ýMySQL»¹ÊÇ×öÁËһЩÏÞÖÆµÄ£¬±ÈÈçLOAD DATA INFILEÖ»ÄܶÁÈ«¾Ö¿É¶ÁµÄÎļþ£¬SELECT ... INTO OUTFILE²»Äܸ²¸ÇÒѾ­´æÔÚµÄÎļþ¡£ ±¾µØµÄÈÕÖ¾ÎļþÒ²²»ÄܺöÊÓ£¬°üÀ¨shellµÄÈÕÖ¾ºÍMySQL×Ô¼ºµÄÈÕÖ¾¡£ÓÐЩÓû§ÔÚ±¾µØµÇ½»ò±¸·ÝÊý¾Ý¿âµÄʱºòΪÁËͼ·½±ã£¬ÓÐʱ»áÔÚÃüÁîÐвÎÊýÀïÖ±½Ó´øÁËÊý¾Ý¿âµÄÃÜÂ룬È磺 shell>/usr/local/mysql/bin/mysqldump -uroot -ptest test>test.sql shell>/usr/local/mysql/bin/mysql -uroot -ptest ÕâЩÃüÁî»á±»shell¼Ç¼ÔÚÀúÊ·ÎļþÀ±ÈÈçbash»áдÈëÓû§Ä¿Â¼µÄ.bash_historyÎļþ£¬Èç¹ûÕâЩÎļþ²»É÷±»¶Á£¬ÄÇôÊý¾Ý¿âµÄÃÜÂë¾Í»áй©¡£Óû§µÇ½Êý¾Ý¿âºóÖ´ÐеÄSQLÃüÁîÒ²»á±»MySQL¼Ç¼ÔÚÓû§Ä¿Â¼µÄ.mysql_historyÎļþÀï¡£Èç¹ûÊý¾Ý¿âÓû§ÓÃSQLÓï¾äÐÞ¸ÄÁËÊý¾Ý¿âÃÜÂ룬Ҳ»áÒò.mysql_historyÎļþ¶øÐ¹Â©¡£ËùÒÔÎÒÃÇÔÚshellµÇ½¼°±¸·ÝµÄʱºò²»ÒªÔÚ-pºóÖ±½Ó¼ÓÃÜÂ룬¶øÊÇÔÚÌáʾºóÔÙÊäÈëÊý¾Ý¿âÃÜÂë¡£

¡¡¡¡ÁíÍâÕâÁ½¸öÎļþÎÒÃÇÒ²Ó¦¸Ã²»ÈÃËü¼Ç¼ÎÒÃǵIJÙ×÷£¬ÒÔ·ÀÍòÒ»¡£

¡¡¡¡shell>rm .bash_history .mysql_history

¡¡¡¡shell>ln -s /dev/null .bash_history

¡¡¡¡shell>ln -s /dev/null .mysql_history

¡¡¡¡ÉÏÃÅÕâÁ½ÌõÃüÁî°ÑÕâÁ½¸öÎļþÁ´½Óµ½/dev/null£¬ÄÇôÎÒÃǵIJÙ×÷¾Í²»»á±»¼Ç¼µ½ÕâÁ½¸öÎļþÀïÁË¡£

¡¡¡¡3¡¢Íâ²¿ÍøÂ簲ȫ

¡¡¡¡MySQLÊý¾Ý¿â°²×°ºÃÒÔºó£¬Unixƽ̨µÄuser±íÊÇÕâÑùµÄ£º

¡¡¡¡mysql> use mysql;

¡¡¡¡Database changed

¡¡¡¡mysql> select Host,User,PassWord,Select_priv,Grant_priv from user;

¡¡¡¡+-----------+------+----------+-------------+------------+

¡¡¡¡ Host User PassWord Select_priv Grant_priv

¡¡¡¡+-----------+------+----------+-------------+------------+

¡¡¡¡ localhost root Y Y

¡¡¡¡ redhat root Y Y

¡¡¡¡ localhost N N

¡¡¡¡ redhat N N

¡¡¡¡+-----------+------+----------+-------------+------------+

¡¡¡¡4 rows in set (0.00 sec)

¡¡¡¡Windowsƽ̨µÄuser±íÊÇÕâÑùµÄ£º

¡¡¡¡mysql> use mysql;

¡¡¡¡Database changed

¡¡¡¡mysql> select Host,User,PassWord,Select_priv,Grant_priv from user;

¡¡¡¡+-----------+------+----------+-------------+------------+

¡¡¡¡ Host User PassWord Select_priv Grant_priv

¡¡¡¡+-----------+------+----------+-------------+------------+

¡¡¡¡ localhost root Y Y

¡¡¡¡ % root Y Y

¡¡¡¡ localhost Y Y

¡¡¡¡ % N N

¡¡¡¡+-----------+------+----------+-------------+------------+

¡¡¡¡4 rows in set (0.00 sec) ÎÒÃÇÏÈÀ´¿´Unixƽ̨µÄuser±í¡£ÆäÖÐredhatÖ»ÊÇÎÒÊÔÑé»úµÄ»úÆ÷Ãû£¬ËùÒÔʵ¼ÊÉÏUnixƽ̨µÄMySQLĬÈÏÖ»ÔÊÐí±¾»ú²ÅÄÜÁ¬½ÓÊý¾Ý¿â¡£µ«ÊÇȱʡrootÓû§¿ÚÁîÊǿգ¬ËùÒÔµ±ÎñÖ®¼±ÊǸørootÓû§¼ÓÉÏ¿ÚÁî¡£¸øÊý¾Ý¿âÓû§¼Ó¿ÚÁîÓÐÈýÖÖ·½·¨£º 1)ÔÚshellÌáʾ·ûÏÂÓÃmysqladminÃüÁîÀ´¸ÄrootÓû§¿ÚÁî:

¡¡¡¡shell>mysqladmin -uroot passWord test ÕâÑù£¬MySQLÊý¾Ý¿ârootÓû§µÄ¿ÚÁî¾Í±»¸Ä³ÉtestÁË¡££¨testÖ»ÊǾÙÀý£¬ÎÒÃÇʵ¼ÊʹÓõĿÚÁîÒ»¶¨²»ÄÜʹÓÃÕâÖÖÒײµÄÈõ¿ÚÁ

¡¡¡¡2)ÓÃset passWordÐ޸ĿÚÁ

¡¡¡¡mysql> set passWord for root@localhost=passWord(¡®test¡®);

¡¡¡¡ÕâʱrootÓû§µÄ¿ÚÁî¾Í±»¸Ä³ÉtestÁË¡£

¡¡¡¡3)Ö±½ÓÐÞ¸Äuser±íµÄrootÓû§¿ÚÁ

¡¡¡¡mysql> use mysql;

¡¡¡¡mysql> update user set passWord=passWord(¡®test¡®) where user=¡®root¡®;

¡¡¡¡mysql> flush privileges;

¡¡¡¡ÕâÑù£¬MySQLÊý¾Ý¿ârootÓû§µÄ¿ÚÁîÒ²±»¸Ä³ÉtestÁË¡£ÆäÖÐ×îºóÒ»¾äÃüÁîflush privilegesµÄÒâ˼ÊÇÇ¿ÖÆË¢ÐÂÄÚ´æÊÚȨ±í£¬·ñÔòÓõϹÊÇ»º³åÖеĿÚÁÕâʱ·Ç·¨Óû§»¹¿ÉÒÔÓÃrootÓû§¼°¿Õ¿ÚÁîµÇ½£¬Ö±µ½ÖØÆôMySQL·þÎñÆ÷¡£

¡¡¡¡ÎÒÃÇ»¹¿´µ½userΪ¿ÕµÄÄäÃûÓû§£¬ËäÈ»ËüÔÚUnixƽ̨ÏÂûʲôȨÏÞ£¬µ«ÎªÁ˰²È«Æð¼ûÎÒÃÇÓ¦¸Ãɾ³ýËü£º

¡¡¡¡mysql> delete from user where user=¡®¡®;

¡¡¡¡Windows°æ±¾MySQLµÄuser±íÓкܴó²»Í¬£¬ÎÒÃÇ¿´µ½Host×ֶγýÁËlocalhost»¹ÓÐÊÇ%¡£ÕâÀï%µÄÒâ˼ÊÇÔÊÐíÈÎÒâµÄÖ÷»úÁ¬½ÓMySQL·þÎñÆ÷£¬ÕâÊǷdz£²»°²È«µÄ£¬¸ø¹¥»÷ÕßÔì³É¿É³ËÖ®»ú£¬ÎÒÃDZØÐëɾ³ýHost×Ö¶ÎΪ%µÄ¼Ç¼£º

¡¡¡¡mysql>delete from user where host=¡®%¡®;

¡¡¡¡Ä¬ÈÏrootÓû§µÄ¿ÕÃÜÂëÒ²ÊDZØÐëÐ޸ģ¬ÈýÖÖÐ޸ķ½·¨ºÍUnixƽ̨һÑù¡£

¡¡¡¡ÎÒÃÇ×¢Òâµ½Host×Ö¶ÎΪlocalhostµÄÄäÃûÓû§ÓµÓÐËùÓеÄȨÏÞ£¡¾ÍÊÇ˵±¾µØÓû§ÓÿյÄÓû§ÃûºÍ¿ÕµÄ¿ÚÁîµÇ½MySQLÊý¾Ý¿â·þÎñÆ÷¿ÉÒԵõ½×î¸ßµÄȨÏÞ£¡ËùÒÔÄäÃûÓû§±ØÐëɾ³ý£¡

¡¡¡¡mysql> delete from user where user=¡®¡®;

¡¡¡¡¶Ôuser±í²Ù×÷ÒÔºó²»ÒªÍüÁËÓÃflush privilegesÀ´Ç¿ÖÆË¢ÐÂÄÚ´æÊÚȨ±í£¬ÕâÑù²ÅÄÜÉúЧ¡£

¡¡¡¡Ä¬Èϰ²×°µÄWindows°æMySQL´æÔڵIJ»°²È«ÒòËØÌ«¶à£¬ÎÒÃÇÔÚ°²×°ºóÒ»¶¨Òª½øÒ»²½ÅäÖã¡

¡¡¡¡MySQLµÄ5¸öÊÚȨ±í£ºuser, db, host, tables_privºÍcolumns_privÌṩ·Ç³£Áé»îµÄ°²È«»úÖÆ£¬´ÓMySQL 3.22.11¿ªÊ¼ÒýÈëÁËÁ½ÌõÓï¾äGRANTºÍREVOKEÀ´´´½¨ºÍɾ³ýÓû§È¨ÏÞ£¬¿ÉÒÔ·½±ãµÄÏÞÖÆÄĸöÓû§¿ÉÒÔÁ¬½Ó·þÎñÆ÷£¬´ÓÄÄÀïÁ¬½ÓÒÔ¼°Á¬½Óºó¿ÉÒÔ×öʲô²Ù×÷¡£×÷ΪMySQL¹ÜÀíÔ±£¬ÎÒÃDZØÐëÁ˽âÊÚȨ±íµÄÒâÒåÒÔ¼°ÈçºÎÓÃGRANTºÍREVOKEÀ´´´½¨Óû§¡¢ÊÚȨºÍ³·È¨¡¢É¾³ýÓû§¡£ ÔÚ3.22.11°æ±¾ÒÔǰµÄMySQLÊÚȨ»úÖÆ²»ÍêÉÆ£¬ºÍа汾ҲÓнϴóµÄ²»Í¬£¬½¨ÒéÉý¼¶µ½×îа汾µÄMySQL¡££¨±¾ÊéµÄ²Ù×÷Àý×ÓÊÇÒÔMySQL 3.23.49

¡¡¡¡ÎªÑù±¾£©ÎÒÃÇÏÈÀ´Á˽âÊÚȨ±íµÄ½á¹¹¡£ 1)MySQLÊÚȨ±íµÄ½á¹¹ÓëÄÚÈÝ£º

¡¡¡¡mysql> desc user;

¡¡¡¡+-----------------+-----------------+------+-----+---------+-------+ Field Type Null Key Default Extra +-----------------+-----------------+------+-----+---------+-------+

¡¡¡¡ Host char(60) binary PRI

¡¡¡¡ User char(16) binary PRI

¡¡¡¡ PassWord char(16) binary

¡¡¡¡ Select_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ Insert_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ Update_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ Delete_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ Create_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ Drop_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ Reload_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ Shutdown_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ Process_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ File_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ Grant_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ References_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ Index_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ Alter_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡+-----------------+-----------------+------+-----+---------+-------+

¡¡¡¡17 rows in set (0.01 sec)

¡¡¡¡user±íÊÇ5¸öÊÚȨ±íÖÐ×îÖØÒªµÄÒ»¸ö£¬Áгö¿ÉÒÔÁ¬½Ó·þÎñÆ÷µÄÓû§¼°Æä¼ÓÃÜ¿ÚÁ²¢ÇÒËüÖ¸¶¨ËûÃÇÓÐÄÄÖÖÈ«¾Ö£¨³¬¼¶Óû§£©È¨ÏÞ¡£ÔÚuser±íÆôÓõÄÈκÎȨÏÞ¾ùÊÇÈ«¾ÖȨÏÞ£¬²¢ÊÊÓÃÓÚËùÓÐÊý¾Ý¿â¡£ËùÒÔÎÒÃDz»ÄܸøÈκÎÓû§·ÃÎÊmysql.user±íµÄȨÏÞ£¡

¡¡¡¡È¨ÏÞ˵Ã÷£º

¡¡¡¡+-----------+-------------+-----------------------------------------------------------------------+

¡¡¡¡ ȨÏÞÖ¸¶¨·û ÁÐÃû ȨÏÞ²Ù×÷

¡¡¡¡+-----------+-------------+-----------------------------------------------------------------------+

¡¡¡¡ Select Select_priv ÔÊÐí¶Ô±íµÄ·ÃÎÊ£¬²»¶ÔÊý¾Ý±í½øÐзÃÎʵÄselectÓï¾ä²»ÊÜÓ°Ï죬±ÈÈçselect 1+1 +-----------+-------------+-----------------------------------------------------------------------+

¡¡¡¡ Insert Insert_priv ÔÊÐí¶Ô±íÓÃinsertÓï¾ä½øÐÐдÈë²Ù×÷¡£ +-----------+-------------+-----------------------------------------------------------------------+

¡¡¡¡ Update Update_priv ÔÊÐíÓÃupdateÓï¾äÐ޸ıíÖÐÏÖÓмǼ¡£ +-----------+-------------+-----------------------------------------------------------------------+ Delete Delete_priv ÔÊÐíÓÃdeleteÓï¾äɾ³ý±íÖÐÏÖÓмǼ¡£ +-----------+-------------+-----------------------------------------------------------------------+ Create Create_priv ÔÊÐí½¨Á¢ÐµÄÊý¾Ý¿âºÍ±í¡£ +-----------+-------------+-----------------------------------------------------------------------+

¡¡¡¡ Drop Drop_priv ÔÊÐíɾ³ýÏÖÓеÄÊý¾Ý¿âºÍ±í¡£

¡¡¡¡+-----------+-------------+-----------------------------------------------------------------------+

¡¡¡¡ Index Index_priv ÔÊÐí´´½¨¡¢Ð޸Ļòɾ³ýË÷Òý¡£

¡¡¡¡+-----------+-------------+-----------------------------------------------------------------------+

¡¡¡¡ Alter Alter_priv ÔÊÐíÓÃalterÓï¾äÐ޸ıí½á¹¹¡£

¡¡¡¡+-----------+-------------+-----------------------------------------------------------------------+

¡¡¡¡ Grant Grant_priv ÔÊÐí½«×Ô¼ºÓµÓеÄȨÏÞÊÚÓèÆäËüÓû§£¬°üÀ¨grant¡£

¡¡¡¡+-----------+-------------+-----------------------------------------------------------------------+

¡¡¡¡ Reload Reload ÔÊÐíÖØÔØÊÚȨ±í£¬Ë¢Ð·þÎñÆ÷µÈÃüÁî¡£

¡¡¡¡+-----------+-------------+-----------------------------------------------------------------------+

¡¡¡¡ Shutdown Shudown_priv ÔÊÐíÓÃmysqladmin shutdownÃüÁî¹Ø±ÕMySQL·þÎñÆ÷¡£¸ÃȨÏޱȽÏΣÏÕ£¬

¡¡¡¡ ²»Ó¦¸ÃËæ±ãÊÚÓè¡£

¡¡¡¡+-----------+-------------+-----------------------------------------------------------------------+

¡¡¡¡ Process Process_priv ÔÊÐí²é¿´ºÍÖÕÖ¹MySQL·þÎñÆ÷ÕýÔÚÔËÐеÄỊ̈߳¨½ø³Ì£©ÒÔ¼°ÕýÔÚÖ´ÐеIJéѯÓï¾ä

¡¡¡¡ £¬°üÀ¨Ö´ÐÐÐÞ¸ÄÃÜÂëµÄ²éѯÓï¾ä¡£¸ÃȨÏޱȽÏΣÏÕ£¬²»Ó¦¸ÃËæ±ãÊÚÓè¡£

¡¡¡¡+-----------+-------------+-----------------------------------------------------------------------+ File File_priv ÔÊÐí´Ó·þÎñÆ÷É϶ÁÈ«¾Ö¿É¶ÁÎļþºÍдÎļþ¡£¸ÃȨÏޱȽÏΣÏÕ£¬²»Ó¦¸ÃËæ±ãÊÚÓè¡£ +-----------+-------------+-----------------------------------------------------------------------+

¡¡¡¡mysql> desc db;

¡¡¡¡+-----------------+-----------------+------+-----+---------+-------+ Field Type Null Key Default Extra

¡¡¡¡+-----------------+-----------------+------+-----+---------+-------+ Host char(60) binary PRI Db char(64) binary PRI

¡¡¡¡ User char(16) binary PRI

¡¡¡¡ Select_priv enum(¡®N¡®,¡®Y¡®) N Insert_priv enum(¡®N¡®,¡®Y¡®) N Update_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ Delete_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ Create_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ Drop_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ Grant_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ References_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ Index_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ Alter_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡+-----------------+-----------------+------+-----+---------+-------+

¡¡¡¡13 rows in set (0.01 sec)

¡¡¡¡db±íÁгöÊý¾Ý¿â£¬¶øÓû§ÓÐȨÏÞ·ÃÎÊËüÃÇ¡£ÔÚÕâÀïÖ¸¶¨µÄȨÏÞÊÊÓÃÓÚÒ»¸öÊý¾Ý¿âÖеÄËùÓÐ±í¡£

¡¡¡¡mysql> desc host;

¡¡¡¡+-----------------+-----------------+------+-----+---------+-------+

¡¡¡¡ Field Type Null Key Default Extra

¡¡¡¡+-----------------+-----------------+------+-----+---------+-------+

¡¡¡¡ Host char(60) binary PRI

¡¡¡¡ Db char(64) binary PRI

¡¡¡¡ Select_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ Insert_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ Update_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ Delete_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ Create_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ Drop_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ Grant_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ References_priv enum(¡®N¡®,¡®Y¡®) N Index_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡ Alter_priv enum(¡®N¡®,¡®Y¡®) N

¡¡¡¡+-----------------+-----------------+------+-----+---------+-------+

¡¡¡¡12 rows in set (0.01 sec)

¡¡¡¡host±íÓëdb±í½áºÏʹÓÃÔÚÒ»¸ö½ÏºÃ²ã´ÎÉÏ¿ØÖÆÌض¨Ö÷»ú¶ÔÊý¾Ý¿âµÄ·ÃÎÊȨÏÞ£¬Õâ¿ÉÄܱȵ¥¶ÀʹÓÃdbºÃЩ¡£Õâ¸ö±í²»ÊÜGRANTºÍREVOKEÓï¾äµÄÓ°Ïì £¬ËùÒÔ£¬Äã¿ÉÄÜ·¢¾õÄã¸ù±¾²»ÊÇÓÃËü¡£

¡¡¡¡mysql> desc tables_priv;

¡¡¡¡+-------------+-----------------------------+------+-----+---------+-------+ Field Type Null Key Default Extra

¡¡¡¡+-------------+-----------------------------+------+-----+---------+-------+ Host char(60) binary PRI Db char(64) binary PRI

¡¡¡¡ User char(16) binary PRI Table_name char(60) binary PRI Grantor char(77) MUL

¡¡¡¡ Timestamp timestamp(14) YES NULL

¡¡¡¡ Table_priv set(¡®Select¡®,¡®Insert¡®,

¡¡¡¡ ¡®Update¡®,¡®Delete¡®,¡®Create¡®,

¡¡¡¡ ¡®Drop¡®,¡®Grant¡®,¡®References¡®,

¡¡¡¡ ¡®Index¡®,¡®Alter¡®)

¡¡¡¡ Column_priv set(¡®Select¡®,¡®Insert¡®,

¡¡¡¡ ¡®Update¡®,¡®References¡®)

¡¡¡¡+-------------+-----------------------------+------+-----+---------+-------+

¡¡¡¡8 rows in set (0.01 sec)

¡¡¡¡tables_priv±íÖ¸¶¨±í¼¶È¨ÏÞ¡£ÔÚÕâÀïÖ¸¶¨µÄÒ»¸öȨÏÞÊÊÓÃÓÚÒ»¸ö±íµÄËùÓÐÁС£

¡¡¡¡mysql> desc columns_priv;

¡¡¡¡+-------------+------------------------+------+-----+---------+----+

¡¡¡¡ Field Type Null Key Default Extra

¡¡¡¡+-------------+------------------------+------+-----+---------+----+

¡¡¡¡ Host char(60) binary PRI

¡¡¡¡ Db char(64) binary PRI

¡¡¡¡ User char(16) binary PRI

¡¡¡¡ Table_name char(64) binary PRI

¡¡¡¡ Column_name char(64) binary PRI

¡¡¡¡ Timestamp timestamp(14) YES NULL

¡¡¡¡ Column_priv set(¡®Select¡®,¡®Insert¡®,

¡¡¡¡ ¡®Update¡®,¡®References¡®) +-------------+------------------------+------+-----+---------+-------+

¡¡¡¡7 rows in set (0.00 sec)

¡¡¡¡columns_priv±íÖ¸¶¨Áм¶È¨ÏÞ¡£ÔÚÕâÀïÖ¸¶¨µÄȨÏÞÊÊÓÃÓÚÒ»¸ö±íµÄÌØ¶¨ÁС£

¡¡¡¡2)MySQLÊÚȨ±íÔËÐлúÖÆ

¡¡¡¡MySQLµÄ·ÃÎÊ¿ØÖÆ·ÖÁ½¸ö²½Ö裺

¡¡¡¡a)·þÎñÆ÷¼ì²éÊÇ·ñÔÊÐí¸ÃÓû§Á¬½Ó¡£

¡¡¡¡b)Èç¹û¸ÃÓû§ÓÐȨÁ¬½Ó£¬ÄÇô·þÎñÆ÷»¹»á¼ì²éËüµÄÿһ¸öÇëÇóÊÇ·ñÓÐ×ã¹»µÄȨÏÞ¡£±ÈÈ磺Óû§¼ìË÷Êý¾Ý¿âÖеÄÒ»¸ö±íÐèÒªÓÐÕâ¸öÊý¾Ý¿âµÄselectȨÏÞ£¬Óû§É¾³ýÊý¾Ý¿âÖеÄÒ»¸ö±íÐèÒªÓÐÕâ¸öÊý¾Ý¿âµÄdropȨÏÞ¡£

¡¡¡¡ÊÚȨ±íµÄuser, db, host±íʹÓÃÕâÁ½¸ö²½Ö裬tables_privºÍcolumns_priv±íֻʹÓõڶþ²½£¨¼ì²éÇëÇ󣩡£Ã¿¸öÊÚȨ±í°üº¬¾ö¶¨Ò»¸öȨÏÞºÎʱÔËÓõķ¶Î§Áк;ö¶¨ÊÚÓèÄÄÖÖȨÏÞµÄȨÏÞÁС£ ·¶Î§ÁÐÖ¸¶¨±íÖеÄȨÏÞºÎʱÔËÓá£Ã¿¸öÊÚȨ±íÌõÄ¿°üº¬UserºÍHostÁÐÀ´Ö¸¶¨È¨ÏÞºÎʱÔËÓÃÓÚÒ»¸ö¸ø¶¨Óû§´Ó¸ø¶¨Ö÷»úµÄÁ¬½Ó¡£ÆäËû±í°üº¬¸½¼ÓµÄ·¶Î§ÁУ¬Èçdb±í°üº¬Ò»¸öDbÁÐÖ¸³öȨÏÞÔËÓÃÓÚÄĸöÊý¾Ý¿â¡£ÀàËÆµØ£¬tables_privºÍcolumns_priv±í°üº¬·¶Î§×ֶΣ¬ËõС·¶Î§µ½Ò»¸öÊý¾Ý¿âÖеÄÌØ¶¨±í»òÒ»¸ö±íµÄÌØ¶¨ÁС£ ÏÂÃæÊÇuser±íµÄHost×ֶκÍUser×Ö¶Î×éºÏµÄһЩÀý×Ó£º +-----------------------------+--------+------------------------------------------------+ HostÖµ UserÖµ Æ¥ÅäµÄÁ¬½Ó +-----------------------------+--------+-----------------------------------------------+

¡¡¡¡ ¡®x.y.z¡® ¡®test¡® testÓû§Ö»ÄÜ´Óx.y.zÁ¬½ÓÊý¾Ý¿â

¡¡¡¡+-----------------------------+--------+-----------------------------------------------+

¡¡¡¡ ¡®x.y.z¡® ¡®¡® ÈκÎÓû§¿ÉÒÔ´Óx.y.zÁ¬½ÓÊý¾Ý¿â

¡¡¡¡+-----------------------------+--------+-----------------------------------------------+

¡¡¡¡ ¡®%¡® ¡®test¡® testÓû§¿ÉÒÔ´ÓÈÎÒâÖ÷»úÁ¬½ÓÊý¾Ý¿â

¡¡¡¡+-----------------------------+--------+----------------------------------------------+

¡¡¡¡ ¡®¡® ¡®¡® ÈκÎÓû§¿ÉÒÔ´ÓÈÎÒâÖ÷»úÁ¬½ÓÊý¾Ý¿â

¡¡¡¡+-----------------------------+--------+-----------------------------------------------+

¡¡¡¡ ¡®%.y.z¡® ¡®test¡® testÓû§¿ÉÒÔ´Óy.zÓòµÄÈÎÒâÖ÷»úÁ¬½ÓÊý¾Ý¿â

¡¡¡¡+-----------------------------+--------+----------------------------------------------+

¡¡¡¡ ¡®x.y.% ¡® ¡®test¡® testÓû§¿ÉÒÔ´Óx.y.net, x.y.com, x.y.eduµÈÖ÷»úÁ¬½ÓÊý¾Ý¿â +-----------------------------+--------+----------------------------------------------+

¡¡¡¡ ¡®192.168.1.1¡® ¡®test¡® testÓû§¿ÉÒÔ´ÓIPµØÖ·Îª192.168.1.1µÄÖ÷»úÁ¬½ÓÊý¾Ý¿â

¡¡¡¡+-----------------------------+--------+---------------------------------------------+

¡¡¡¡ ¡®192.168.1.% ¡® ¡®test¡® testÓû§¿ÉÒÔ´ÓCÀà×ÓÍø192.168.1ÖеÄÈÎÒâÖ÷»úÁ¬½ÓÊý¾Ý¿â

¡¡¡¡+-----------------------------+--------+---------------------------------------------+ ¡®192.168.1.0/255.255.255.0¡® ¡®test¡® ͬÉÏ

¡¡¡¡+-----------------------------+--------+--------------------------------------------+

¡¡¡¡SQLµÄ×Ö·û´®Í¨Åä·û%±íʾƥÅäÈÎÒâ×Ö·û£¬¿ÉÒÔÊÇ0¸ö×Ö·û£¬Í¨Åä·û_±íʾƥÅäÒ»¸ö×Ö·û¡£

¡¡¡¡È¨ÏÞÁÐÖ¸³öÔÚ·¶Î§ÁÐÖÐÖ¸¶¨µÄÓû§ÓµÓкÎÖÖȨÏÞ¡£¸Ã±íʹÓÃGRANTÓï¾äµÄȨÏÞÃû³Æ¡£¶ÔÓÚ¾ø´ó¶àÊýÔÚuser¡¢dbºÍhost±íÖеÄȨÏÞÁеÄÃû³ÆÓëGRANTÓï¾äÖÐÓÐÃ÷ÏÔµÄÁªÏµ¡£ÈçSelect_priv¶ÔÓ¦ÓÚSELECTȨÏÞ¡£

¡¡¡¡3)ÊÚȨ±íʹÓþÙÀý

¡¡¡¡grantÓÃÓÚ¸øÔö¼ÓÓû§ºÍ´´½¨È¨ÏÞ£¬revokeÓÃÓÚɾ³ýÓû§È¨ÏÞ¡£ ÏÂÃæÊÇһЩÓÃgrantÔö¼ÓÓû§ºÍ´´½¨È¨ÏÞµÄÀý×Ó£º

¡¡¡¡mysql> grant all privileges on *.* to test@localhost identified by ¡®test¡® with grant option;

¡¡¡¡Õâ¾äÔö¼ÓÒ»¸ö±¾µØ¾ßÓÐËùÓÐȨÏÞµÄtestÓû§£¨³¬¼¶Óû§£©£¬ÃÜÂëÊÇtest¡£ON×Ó¾äÖеÄ*.*Òâζ×Å"ËùÓÐÊý¾Ý¿â¡¢ËùÓбí"¡£with grant option±íʾËü¾ßÓÐgrantȨÏÞ¡£

¡¡¡¡mysql> grant select,insert,update,delete,create,drop privileges on test.* to test1@¡®192.168.1.0/255.255.255.0¡® identified by ¡®test¡®;

¡¡¡¡Õâ¾äÊÇÔö¼ÓÁËÒ»¸ötest1Óû§£¬¿ÚÁîÊÇtest£¬µ«ÊÇËüÖ»ÄÜ´ÓCÀà×ÓÍø192.168.1Á¬½Ó£¬¶Ôtest¿âÓÐselect,insert,update,delete,create,drop²Ù×÷ȨÏÞ¡£

¡¡¡¡ÓÃgrantÓï¾ä´´½¨È¨ÏÞÊDz»ÐèÒªÔÙÊÖ¹¤Ë¢ÐÂÊÚȨ±íµÄ£¬ÒòΪËüÒѾ­×Ô¶¯Ë¢ÐÂÁË¡£

¡¡¡¡¸øÓû§´´½¨È¨ÏÞ»¹¿ÉÒÔͨ¹ýÖ±½ÓÐÞ¸ÄÊÚȨ±í£º

¡¡¡¡mysql> insert into user values("localhost","test",passWord("test"),"Y","Y","Y","Y","Y","Y","Y","Y","Y","Y","Y","Y","Y","Y");

¡¡¡¡mysql> flush privileges;

¡¡¡¡ÕâÁ½¾äºÍÉÏÃæµÚÒ»¾ägrantµÄЧ¹ûÊÇÒ»ÑùµÄ£¬Ò²ÊÇÔö¼ÓÁËÒ»¸ö±¾µØµÄtest³¬¼¶Óû§¡£ÎÒÃÇ¿´µ½ÓÃgrant·½±ã¶àÁË£¬¶øÇÒ»¹²»Ðèflush privileges ¡£

¡¡¡¡mysql> insert into user (host,user,passWord) values("192.168.1.0/255.255.255.0","test1",PASSWord("test"));

¡¡¡¡mysql> insert into db values("192.168.1.0/255.255.255.0","test","test1","Y","Y","Y","Y","Y","Y","N","N","N","N")

¡¡¡¡mysql> flush privileges;

¡¡¡¡ÕâÈý¾äºÍÉÏÃæµÚ¶þ¾ägrantµÄЧ¹ûÒ²ÊÇÒ»ÑùµÄ£¬Ò²ÊÇÔö¼ÓÁËÒ»¸öÖ»ÄÜ´ÓCÀà×ÓÍø192.168.1Á¬½Ó£¬¶Ôtest¿âÓÐselect,insert,update,delete,create,drop²Ù×÷ȨÏÞµÄtest1Óû§£¬¿ÚÁîÊÇtest¡£ÒªÈ¡ÏûÒ»¸öÓû§µÄȨÏÞ£¬Ê¹ÓÃrevokeÓï¾ä¡£revokeµÄÓï·¨·Ç³£ÀàËÆÓÚgrantÓï¾ä£¬³ýÁËtoÓÃfromÈ¡´ú²¢ÇÒûÓÐidentified byºÍwith grant option×Ӿ䣬ÏÂÃæÊÇÓÃrevokeɾ³ýÓû§È¨ÏÞµÄÀý×Ó£º

¡¡¡¡mysql> revoke all on test.* from test1@¡®192.168.1.0/255.255.255.0¡®;

¡¡¡¡Õâ¾ärevoke¾Í³·ÏûÁËÉÏÃæµÚ¶þ¾ägrant´´½¨µÄȨÏÞ£¬µ«ÊÇtest1Óû§²¢Ã»Óб»É¾³ý£¬±ØÐëÊÖ¹¤´Óuser±íɾ³ý£º

¡¡¡¡mysql> delete from user where user=¡®test1¡®; mysql> flush privileges;

¡¡¡¡ÕâÑù£¬test1Óû§¾Í³¹µ×ɾ³ýÁË¡£

¡¡¡¡ÕâЩֻÊÇMySQLÊÚȨ±íµÄ¼òµ¥Ê¹Ó㬸ü¶àÏêϸµÄ×ÊÁÏÇë¼ûMySQLÌṩµÄÊֲᡣ

¡¡¡¡3¡¢±à³ÌÐèҪעÒâµÄһЩÎÊÌâ

¡¡¡¡²»¹ÜÊÇÓÃÄÄÖÖ³ÌÐòÓïÑÔдÁ¬½ÓMySQLÊý¾Ý¿âµÄ³ÌÐò£¬ÓÐÒ»Ìõ×¼ÔòÊÇÓÀÔ¶²»ÒªÏàÐÅÓû§Ìá½»µÄÊý¾Ý£¡

¡¡¡¡¶ÔÓÚÊý×Ö×ֶΣ¬ÎÒÃÇҪʹÓòéѯÓï¾ä£ºSELECT * FROM table WHERE ID=¡®234¡®£¬²»ÒªÊ¹ÓÃSELECT * FROM table WHERE ID=234ÕâÑùµÄ²éѯÓï¾ä¡£MySQL»á×Ô¶¯°Ñ×Ö´®×ª»»ÎªÊý×Ö×Ö·û²¢ÇÒÈ¥³ý·ÇÊý×Ö×Ö·û¡£Èç¹ûÓû§Ìá½»µÄÊý¾Ý¾­¹ýÁËmysql_escape_string´¦Àí£¬ÕâÑùÎÒÃǾͿÉÒÔÍêÈ«¶Å¾øÁËsql inject¹¥»÷£¬¹ØÓÚsql inject¹¥»÷Çë²Î¿¼ÏÂÃæÁ´½ÓµÄÎÄÕ£ºhttp://www.spidynamiCS.com/papers/S...nWhitePaper.PDF

¡¡¡¡http://www.ngssoftware.com/papers/a...l_injection.PDF

¡¡¡¡¸÷ÖÖ±à³ÌÓïÑÔ¸Ã×¢ÒâµÄÎÊÌ⣺

¡¡¡¡1)ËùÓÐWeb³ÌÐò£º

¡¡¡¡a)³¢ÊÔÔÚWeb±íµ¥ÊäÈëµ¥ÒýºÅºÍË«ÒýºÅÀ´²âÊÔ¿ÉÄܳöÏֵĴíÎ󣬲¢ÕÒ³öÔ­ÒòËùÔÚ¡£

¡¡¡¡b)ÐÞ¸ÄURL²ÎÊý´øµÄ%22 (¡®"¡®), %23 (¡®#¡®), ºÍ %27 (¡®¡®¡®)¡£

¡¡¡¡c)¶ÔÓÚÊý×Ö×ֶεıäÁ¿£¬ÎÒÃǵÄÓ¦ÓóÌÐò±ØÐë½øÐÐÑϸñµÄ¼ì²é£¬·ñÔòÊǷdz£Î£Ïյġ£

¡¡¡¡d)¼ì²éÓû§Ìá½»µÄÊý¾ÝÊÇ·ñ³¬¹ý×ֶεij¤¶È¡£

¡¡¡¡e)²»Òª¸ø×Ô¼º³ÌÐòÁ¬½ÓÊý¾Ý¿âµÄÓû§¹ý¶àµÄ·ÃÎÊȨÏÞ¡£

¡¡¡¡2)PHP£º a)¼ì²éÓû§Ìá½»µÄÊý¾ÝÔÚ²éѯ֮ǰÊÇ·ñ¾­¹ýaddslashes´¦Àí£¬ÔÚPHP 4.0.3ÒÔºóÌṩÁË»ùÓÚMySQL C APIµÄº¯Êýmysql_escape_string()¡£

¡¡¡¡3)MySQL C API£º

¡¡¡¡a)¼ì²é²éѯ×Ö´®ÊÇ·ñÓÃÁËmysql_escape_string() APIµ÷Óá£

¡¡¡¡4)MySQL++£º

¡¡¡¡a)¼ì²é²éѯ×Ö´®ÊÇ·ñÓÃÁËescapeºÍquote´¦Àí¡£

¡¡¡¡5)Perl DBI£º

¡¡¡¡a)¼ì²é²éѯ×Ö´®ÊÇ·ñÓÃÁËquote()·½·¨¡£

¡¡¡¡6)Java JDBC£º

¡¡¡¡a)¼ì²é²éѯ×Ö´®ÊÇ·ñÓÃÁËPreparedStatement¶ÔÏó¡£

¡¡¡¡4¡¢Ò»Ð©Ð¡ÇÏÃÅ

¡¡¡¡1)Èç¹û²»É÷Íü¼ÇÁËMySQLµÄrootÃÜÂ룬ÎÒÃÇ¿ÉÒÔÔÚÆô¶¯MySQL·þÎñÆ÷ʱ¼ÓÉϲÎÊý--skip-grant-tablesÀ´Ìø¹ýÊÚȨ±íµÄÑéÖ¤ (./safe_mysqld --skip-grant-tables &)£¬ÕâÑùÎÒÃǾͿÉÒÔÖ±½ÓµÇ½MySQL·þÎñÆ÷£¬È»ºóÔÙÐÞ¸ÄrootÓû§µÄ¿ÚÁî£¬ÖØÆôMySQL¾Í¿ÉÒÔÓÃпÚÁîµÇ½ÁË¡£

¡¡¡¡2)Æô¶¯MySQL·þÎñÆ÷ʱ¼ÓÉÏ--skip-show-databaseʹһ°ãÊý¾Ý¿âÓû§²»ÄÜä¯ÀÀÆäËüÊý¾Ý¿â¡£ 3)Æô¶¯MySQL·þÎñÆ÷ʱ¼ÓÉÏ--chroot=path²ÎÊý£¬ÈÃmysqldÊØ»¤½ø³ÌÔËÐÐÔÚchroot»·¾³ÖС£ÕâÑùSQLÓï¾äLOAD DATA INFILEºÍSELECT ... INTO OUTFILE¾ÍÏÞ¶¨ÔÚchroot_path϶ÁдÎļþÁË¡£ÕâÀïÓÐÒ»µãҪעÒ⣬MySQLÆô¶¯ºó»á½¨Á¢Ò»¸ömysql.sockÎļþ£¬Ä¬ÈÏÊÇÔÚ/tmpĿ¼Ï¡£Ê¹ÓÃÁËchrootºó£¬MySQL»áÔÚchroot_path/tmpÈ¥½¨Á¢mysql.sockÎļþ£¬Èç¹ûûÓÐchroot_path/tmpĿ¼»òÆô¶¯MySQLµÄÓû§Ã»ÓÐÕâ¸öĿ¼дȨÏ޾Ͳ»Äܽ¨Á¢mysql.sockÎļþ£¬MySQL»áÆô¶¯Ê§°Ü¡£±ÈÈçÎÒÃǼÓÁË--chroot=/usr/local/mysql/Æô¶¯²ÎÊý£¬ÄÇô×îºÃ½¨Á¢Ò»¸öÆô¶¯MySQLµÄÓû§ÄÜдµÄ

¡¡¡¡/usr/local/mysql/tmpĿ¼£¬µ±È»ÎÒÃÇÒ²¿ÉÒÔÓÃ--socket=pathÀ´Ö¸¶¨mysql.sockÎļþµÄ·¾¶£¬µ«Õâ¸öpathÒ»¶¨ÒªÔÚchroot_pathÀïÃæ¡£

¡¡¡¡4)Æô¶¯MySQL·þÎñÆ÷ʱ¼ÓÉÏ--log-slow-queries[=file]²ÎÊý£¬ÕâÑùmysqld»á°ÑSQLÃüÁîÖ´ÐÐʱ¼ä³¬¹ýlong_query_timeµÄдÈëfileÎļþ¡£Èç¹ûûÓÐÖ¸¶¨=file£¬mysqldĬÈÏ»áдµ½Êý¾ÝĿ¼ÏµÄhostname-slow.log¡£Èç¹ûÖ»Ö¸¶¨ÁËfilename£¬Ã»ÓÐÖ¸¶¨Â·¾¶£¬ÄÇômysqldÒ²»á°Ñfilenameдµ½Êý¾ÝĿ¼Ï¡£ÎÒÃÇͨ¹ýÕâ¸öÈÕÖ¾Îļþ¿ÉÒÔÕÒ³öÖ´ÐÐʱ¼ä³¬³¤µÄ²éѯÓï¾ä£¬È»ºó¾¡¿ÉÄܵÄÓÅ»¯Ëü¼õÇáMySQL·þÎñÆ÷µÄ¸ºµ£¡£

¡¡¡¡5)Èç¹ûÎÒÃÇÖ»Ðè±¾»úʹÓÃMySQL·þÎñ£¬ÄÇôÎÒÃÇ»¹¿ÉÒÔ¼ÓÉÏ--skip-networkingÆô¶¯²ÎÊýʹMySQL²»¼àÌýÈκÎTCP/IPÁ¬½Ó£¬Ôö¼Ó°²È«ÐÔ¡££¨·Ç³£ÍƼö£©

¡¡¡¡6)MySQLµÄ¸ü¶àmysqldÆô¶¯Ñ¡ÏîÇë¼ûMySQLÊÖ²á4.16.4 mysqld Command-line Options






#If you have any other info about this subject , Please add it free.#
êdzÆ:
ÓÊÏä:
µç»°:

ÄúµÄÁôÑÔ:


Èç¹ûÄúÓйØÓÚ MysqlÊý¾Ý¿âµÄ°²È«ÅäÖá¢ÊµÓü¼ÇÉ ·½ÃæµÄ²úÆ·»òÕß¿´·¨£¬¾´ÇëÔÚ´Ë·¢²¼.