1£¬Ë®Æ½²ð·ÖµÄ½éÉÜ
Ò»°ãÀ´Ëµ£¬¼òµ¥µÄˮƽÇзÖÖ÷ÒªÊǽ«Ä³¸ö·ÃÎʼ«Æäƽ·²µÄ±íÔÙ°´ÕÕij¸ö×ֶεÄijÖÖ¹æÔòÀ´·ÖÉ¢µ½¶à¸ö±íÖ®ÖУ¬Ã¿¸ö±íÖаüº¬Ò»²¿·ÖÊý¾Ý¡£
¼òµ¥À´Ëµ£¬ÎÒÃÇ¿ÉÒÔ½«Êý¾ÝµÄˮƽÇзÖÀí½âΪÊǰ´ÕÕÊý¾ÝÐеÄÇз֣¬¾ÍÊǽ«±íÖеÄijЩÐÐÇзֵ½Ò»¸öÊý¾Ý¿â£¬¶øÁíÍâµÄijЩÐÐÓÖÇзֵ½ÆäËûµÄÊý¾Ý¿âÖС£µ±È»£¬ÎªÁËÄܹ»±È½ÏÈÝÒ×µÄÅж¨¸÷ÐÐÊý¾Ý±»Çзֵ½ÄĸöÊý¾Ý¿âÖÐÁË£¬ÇзÖ×ÜÊǶ¼ÐèÒª°´ÕÕijÖÖÌØ¶¨µÄ¹æÔòÀ´½øÐеġ£
Èç¸ù¾Ýij¸öÊý×ÖÀàÐÍ×ֶλùÓÚÌØ¶¨ÊýĿȡ죬ij¸öʱ¼äÀàÐÍ×ֶεķ¶Î§£¬»òÕßÊÇij¸ö×Ö·ûÀàÐÍ×ֶεÄhash
Öµ¡£Èç¹ûÕû¸öϵͳÖд󲿷ֺËÐÄ±í¶¼¿ÉÒÔͨ¹ýij¸ö×Ö¶ÎÀ´½øÐйØÁª£¬ÄÇÕâ¸ö×Ö¶Î×ÔÈ»ÊÇÒ»¸ö½øÐÐˮƽ·ÖÇøµÄÉÏÉÏ֮ѡÁË£¬µ±È»£¬·Ç³£ÌØÊâÎÞ·¨Ê¹ÓþÍÖ»ÄÜÁíÑ¡ÆäËûÁË¡£
2£¬Ë®Æ½²ð·ÖµÄÓÅȱµã
ˮƽ²ð·ÖµÄÓŵ㣺
±í¹ØÁª»ù±¾Äܹ»ÔÚÊý¾Ý¿â¶ËÈ«²¿Íê³É£»
²»»á´æÔÚijЩ³¬´óÐÍÊý¾ÝÁ¿ºÍ¸ß¸ºÔصıíÓöµ½Æ¿¾±µÄÎÊÌ⣻
Ó¦ÓóÌÐò¶ËÕûÌå¼Ü¹¹¸Ä¶¯Ïà¶Ô½ÏÉÙ£»
ÊÂÎñ´¦ÀíÏà¶Ô¼òµ¥£»
Ö»ÒªÇзֹæÔòÄܹ»¶¨ÒåºÃ£¬»ù±¾ÉϽÏÄÑÓöµ½À©Õ¹ÐÔÏÞÖÆ£»
ˮƽÇзֵÄȱµã£º
ÇзֹæÔòÏà¶Ô¸üΪ¸´ÔÓ£¬ºÜÄѳéÏó³öÒ»¸öÄܹ»Âú×ãÕû¸öÊý¾Ý¿âµÄÇзֹæÔò£»
ºóÆÚÊý¾ÝµÄά»¤ÄѶÈÓÐËùÔö¼Ó£¬ÈËΪÊÖ¹¤¶¨Î»Êý¾Ý¸üÀ§ÄÑ£»
Ó¦ÓÃϵͳ¸÷Ä£¿éñîºÏ¶È½Ï¸ß£¬¿ÉÄÜ»á¶ÔºóÃæÊý¾ÝµÄÇ¨ÒÆ²ð·ÖÔì³ÉÒ»¶¨µÄÀ§ÄÑ¡£
3£¬²ð·ÖµÄ¹æÔò
3.1 ¸ù¾Ýȡģˮƽ²ð·Ö
Ò»°ãÀ´Ëµ£¬ÏñÏÖÔÚ»¥ÁªÍø·Ç³£»ð±¬µÄ»¥ÁªÍø¹«Ë¾£¬ÌرðÊǵçÉ̺ÍÓÎÏ·ÒµÎñ£¬»ù±¾Éϴ󲿷ÖÊý¾Ý¶¼Äܹ»Í¨¹ý»áÔ±Óû§ÐÅÏ¢¹ØÁªÉÏ£¬¿ÉÄܺܶàºËÐÄ±í¶¼·Ç³£ÊʺÏͨ¹ý»áÔ±ID
À´½øÐÐÊý¾ÝµÄˮƽÇз֡£ ¶øÏñÂÛ̳ÉçÇøÌÖÂÛϵͳ£¬¾Í¸üÈÝÒ×ÇзÖÁË£¬·Ç³£ÈÝÒ×°´ÕÕÂÛ̳±àºÅÀ´½øÐÐÊý¾ÝµÄˮƽÇз֡£
ÇзÖÖ®ºó»ù±¾Éϲ»»á³öÏÖ¸÷¸ö¿âÖ®¼äµÄ½»»¥¡£
ËùÒÔ£¬¶ÔÓÚÎÒÃǵÄʾÀýÊý¾Ý¿âÀ´Ëµ£¬´ó²¿·ÖµÄ±í¶¼¿ÉÒÔ¸ù¾ÝÓû§ID À´½øÐÐˮƽµÄÇз֡£
²»Í¬Óû§Ïà¹ØµÄÊý¾Ý½øÐÐÇзÖÖ®ºó´æ·ÅÔÚ²»Í¬µÄÊý¾Ý¿âÖС£È罫ËùÓÐÓû§ID ͨ¹ý5ȡģȻºó·Ö±ð´æ·ÅÓÚÁ½¸ö²»Í¬µÄÊý¾Ý¿âÖС£Ã¿¸öºÍÓû§ID
¹ØÁªÉÏµÄ±í¶¼¿ÉÒÔÕâÑùÇз֡£ÕâÑù£¬ »ù±¾ÉÏÿ¸öÓû§Ïà¹ØµÄÊý¾Ý£¬¶¼ÔÚͬһ¸öÊý¾Ý¿âÖУ¬¼´Ê¹ÊÇÐèÒª¹ØÁª£¬Ò²¿ÉÒԷdz£¼òµ¥µÄ¹ØÁªÉÏ¡£
3.2 ¸ù¾ÝÇøÓòÀ´Ë®Æ½ÇзÖ
±ÈÈçÈ«¹ú»®·ÖΪ10´óÆ¬Çø£¬½Õ㻦ËãÒ»¸ç£¬Æë³ËãÒ»¸ö£¬Á½¹ãËãÒ»¸ö£¬Á½ºþËãÒ»¸ö£¬ÖÐÔËãÒ»¸ö£¬Î÷ÄÏËãÒ»¸ö£¬ÄÚÃÉÒ»¸ö£¬¶«±±Ò»¸ö£¬Î÷±±Ò»¸ö£¬»ª±±Ò»¸ö£¬¶«ÄÏÒ»¸ö¡£
ÔÚÒµÎñÁ¿±È½Ï´óµÄ»ª±±¡¢¶«ÄÏ¡¢½Õ㻦¡¢Á½¹ãÆ¬ÇøµÄ·þÎñÆ÷¿ÉÒÔ·ÖÅä½Ï¶àµÄ·þÎñÆ÷×ÊÔ´£¬±ÈÈçcpu¡¢io¡¢ÍøÂçµÈµÈ¿ÉÒÔÓñȽϺõĸ߶ËÅäÖá£
ÔÚÒµÎñÁ¿Õý³£µÄÎ÷±±¡¢Æë³¡¢Á½ºþ¡¢¶«±±µÄ·þÎñÆ÷¿ÉÒÔ·ÖÅäÖи߶˵ķþÎñÆ÷×ÊÔ´¡£
ÔÚÒµÎñÁ¿±È½ÏÉٵģ¬Î÷ÄÏ¡¢ÄÚÃÉ¡¢ÖÐԵķþÎñÆ÷¿ÉÒÔÉÔ΢һ°ã·þÎñÆ÷¼´¿É¡£
µ±È»ÕâЩ×ÊÔ´»®·Ö²»ÄܶÔÍâÃ÷ʾ£¬ÎÒÃÇÔÚ×öÄÚ²¿¹æ»®µÄʱºò¿¼ÂǺþͿÉÒÔÁË£¬ÃâµÃ±»ÈËÚ¸²¡ËµÓÐËùÆ«ÆÄ²»ÖØÊÓÖ®ÀàµÄ¡£
PS£ºÕâÖÖ»®·Ö²»ÊǶ¨ÐԵ쬏ù¾ÝÒµÎñ¿ÉÒÔËæÊ±½«ÒµÎñºÃµÄÆ¬ÇøµÄ×ÊÔ´Éý¼¶¡£
ÈçÏÂͼËùʾ£º

4£¬Ë®Æ½²ð·ÖÓëÓ¦ÓõÄÕûºÏÊÓͼ

5£¬Ë®Æ½²ð·ÖºóÐøµÄÎÊÌâ
ÔÚʵʩÊý¾ÝÇзַ½°¸Ö®Ç°£¬ÓÐЩ¿ÉÄÜ´æÔÚµÄÎÊÌâÎÒÃÇ»¹ÊÇÐèÒª×öһЩ·ÖÎöµÄ¡£Ò»°ãÀ´Ëµ£¬
ÎÒÃÇ¿ÉÄÜÓöµ½µÄÎÊÌâÖ÷Òª»áÓÐÒÔϼ¸µã£º
ÒýÈë·Ö²¼Ê½ÊÂÎñµÄÎÊÌ⣻
¿ç½ÚµãJoin µÄÎÊÌ⣻
¿ç½ÚµãºÏ²¢ÅÅÐò·ÖÒ³ÎÊÌ⣻
5.1 ÒýÈë·Ö²¼Ê½ÊÂÎñµÄÎÊÌâ
Ò»µ©Êý¾Ý½øÐÐÇзֱ»·Ö±ð´æ·ÅÔÚ¶à¸öMySQL Server ÖÐÖ®ºó£¬²»¹ÜÎÒÃǵÄÇзֹæÔòÉè¼ÆµÄ¶àôµÄÍêÃÀ£¨Êµ¼ÊÉϲ¢²»´æÔÚÍêÃÀµÄÇзֹæÔò£©£¬¶¼¿ÉÄÜÔì³É֮ǰµÄijЩÊÂÎñËùÉæ¼°µ½µÄÊý¾ÝÒѾ²»ÔÚͬһ¸öMySQL
Server ÖÐÁË¡£
ÔÚÕâÑùµÄ³¡¾°Ï£¬Èç¹ûÎÒÃǵÄÓ¦ÓóÌÐòÈÔÈ»°´ÕÕÀϵĽâ¾ö·½°¸£¬ÄÇÃ´ÊÆ±ØÐèÒªÒýÈë·Ö²¼Ê½ÊÂÎñÀ´½â¾ö¡£¶øÔÚMySQL
¸÷¸ö°æ±¾ÖУ¬Ö»ÓдÓMySQL 5.0 ¿ªÊ¼ÒÔºóµÄ¸÷¸ö°æ±¾²Å¿ªÊ¼¶Ô·Ö²¼Ê½ÊÂÎñÌṩ֧³Ö£¬¶øÇÒĿǰ½öÓÐInnodb
Ìṩ·Ö²¼Ê½ÊÂÎñÖ§³Ö¡£²»½öÈç´Ë£¬¼´Ê¹ÎÒÃǸպÃʹÓÃÁËÖ§³Ö·Ö²¼Ê½ÊÂÎñµÄMySQL °æ±¾£¬Í¬Ê±Ò²ÊÇʹÓõÄInnodb
´æ´¢ÒýÇæ£¬·Ö²¼Ê½ÊÂÎñ±¾Éí¶ÔÓÚϵͳ×ÊÔ´µÄÏûºÄ¾ÍÊǺܴóµÄ£¬ÐÔÄܱ¾ÉíÒ²²¢²»ÊÇÌ«¸ß¡£¶øÇÒÒýÈë·Ö²¼Ê½ÊÂÎñ±¾ÉíÔÚÒì³£´¦Àí·½Ãæ¾Í»á´øÀ´½Ï¶à±È½ÏÄÑ¿ØÖƵÄÒòËØ¡£
Ôõô°ì£¿ÆäʵÎÒÃÇ¿ÉÒÔ¿ÉÒÔͨ¹ýÒ»¸ö±äͨµÄ·½·¨À´½â¾öÕâÖÖÎÊÌ⣬Ê×ÏÈÐèÒª¿¼ÂǵÄÒ»¼þÊÂÇé¾ÍÊÇ£ºÊÇ·ñÊý¾Ý¿âÊÇΨһһ¸öÄܹ»½â¾öÊÂÎñµÄµØ·½ÄØ£¿Æäʵ²¢²»ÊÇÕâÑùµÄ£¬ÎÒÃÇÍêÈ«¿ÉÒÔ½áºÏÊý¾Ý¿âÒÔ¼°Ó¦ÓóÌÐòÁ½ÕßÀ´¹²Í¬½â¾ö¡£¸÷¸öÊý¾Ý¿â½â¾ö×Ô¼ºÉíÉϵÄÊÂÎñ£¬È»ºóͨ¹ýÓ¦ÓóÌÐòÀ´¿ØÖƶà¸öÊý¾Ý¿âÉÏÃæµÄÊÂÎñ¡£
Ò²¾ÍÊÇ˵£¬Ö»ÒªÎÒÃÇÔ¸Ò⣬ÍêÈ«¿ÉÒÔ½«Ò»¸ö¿ç¶à¸öÊý¾Ý¿âµÄ·Ö²¼Ê½ÊÂÎñ·Ö²ð³É¶à¸ö½ö´¦ÓÚµ¥¸öÊý¾Ý¿âÉÏÃæµÄСÊÂÎñ£¬²¢Í¨¹ýÓ¦ÓóÌÐòÀ´×ܿظ÷¸öСÊÂÎñ¡£µ±È»£¬ÕâÑù×÷µÄÒªÇó¾ÍÊÇÎÒÃǵĶíÓ¦ÓóÌÐò±ØÐëÒªÓÐ×ã¹»µÄ½¡×³ÐÔ£¬µ±È»Ò²»á¸øÓ¦ÓóÌÐò´øÀ´Ò»Ð©¼¼ÊõÄѶȡ£
5.2 ¿ç½ÚµãJoin µÄÎÊÌâ
ÉÏÃæ½éÉÜÁË¿ÉÄÜÒýÈë·Ö²¼Ê½ÊÂÎñµÄÎÊÌ⣬ÏÖÔÚÎÒÃÇÔÙ¿´¿´ÐèÒª¿ç½ÚµãJoin µÄÎÊÌâ¡£Êý¾ÝÇзÖÖ®ºó£¬¿ÉÄÜ»áÔì³ÉÓÐЩÀϵÄJoin
Óï¾äÎÞ·¨¼ÌÐøÊ¹Óã¬ÒòΪJoin ʹÓõÄÊý¾ÝÔ´¿ÉÄܱ»Çзֵ½¶à¸öMySQL Server ÖÐÁË¡£
Ôõô°ì£¿Õâ¸öÎÊÌâ´ÓMySQL Êý¾Ý¿â½Ç¶ÈÀ´¿´£¬Èç¹û·ÇµÃÔÚÊý¾Ý¿â¶ËÀ´Ö±½Ó½â¾öµÄ»°£¬
¿ÖÅÂÖ»ÄÜͨ¹ýMySQL Ò»ÖÖÌØÊâµÄ´æ´¢ÒýÇæFederated À´½â¾öÁË¡£Federated ´æ´¢ÒýÇæÊÇ
MySQL ½â¾öÀàËÆÓÚOracle µÄDB Link Ö®ÀàÎÊÌâµÄ½â¾ö·½°¸¡£ºÍOracleDB Link
µÄÖ÷񻂿±ðÔÚÓÚFederated »á±£´æÒ»·ÝÔ¶¶Ë±í½á¹¹µÄ¶¨ÒåÐÅÏ¢ÔÚ±¾µØ¡£Õ¦Ò»¿´£¬Federated ȷʵÊǽâ¾ö¿ç½ÚµãJoin
·Ç³£ºÃµÄ½â¾ö·½°¸¡£µ«ÊÇÎÒÃÇ»¹Ó¦¸ÃÇå³þÒ»µã£¬ÄǾÍËÆºõÈç¹ûÔ¶¶ËµÄ±í½á¹¹·¢ÉúÁ˱ä¸ü£¬±¾µØµÄ±í¶¨ÒåÐÅÏ¢ÊDz»»á¸ú×Å·¢ÉúÏàÓ¦±ä»¯µÄ¡£Èç¹ûÔÚ¸üÐÂÔ¶¶Ë±í½á¹¹µÄʱºò²¢Ã»Óиüб¾µØµÄFederated
±í¶¨ÒåÐÅÏ¢£¬¾ÍºÜ¿ÉÄÜÔì³ÉQuery ÔËÐгö´í£¬ÎÞ·¨µÃµ½ÕýÈ·µÄ½á¹û¡£
¶Ô´ýÕâÀàÎÊÌ⣬ÎÒ»¹ÊÇÍÆ¼öͨ¹ýÓ¦ÓóÌÐòÀ´½øÐд¦Àí£¬ÏÈÔÚÇý¶¯±íËùÔÚµÄMySQL
Server ÖÐÈ¡³öÏàÓ¦µÄÇý¶¯½á¹û¼¯£¬È»ºó¸ù¾ÝÇý¶¯½á¹û¼¯ÔÙµ½±»Çý¶¯±íËùÔÚµÄMySQL Server ÖÐÈ¡³ö
ÏàÓ¦µÄÊý¾Ý¡£¿ÉÄܺܶà¶ÁÕßÅóÓÑ»áÈÏΪÕâÑù×ö¶ÔÐÔÄÜ»á²úÉúÒ»¶¨µÄÓ°Ï죬Êǵģ¬È·ÊµÊÇ»á¶ÔÐÔÄÜÓÐÒ»¶¨µÄ¸ºÃæÓ°Ï죬µ«ÊdzýÁË´Ë·¨£¬»ù±¾ÉÏûÓÐÌ«¶àÆäËû¸üºÃµÄ½â¾ö°ì·¨ÁË¡£¶øÇÒ£¬ÓÉÓÚÊý¾Ý¿âͨ¹ý½ÏºÃµÄÀ©Õ¹Ö®ºó£¬Ã¿Ì¨MySQL
Server µÄ¸ºÔؾͿÉÒԵõ½½ÏºÃµÄ¿ØÖÆ£¬µ¥´¿Õë¶Ôµ¥ÌõQuery À´Ëµ£¬ÆäÏìӦʱ¼ä¿ÉÄܱȲ»ÇзÖ֮ǰҪÌá¸ßһЩ£¬ËùÒÔÐÔÄÜ·½ÃæËù´øÀ´µÄ¸ºÃæÓ°ÏìÒ²²¢²»ÊÇÌ«´ó¡£¸üºÎ¿ö£¬ÀàËÆÓÚÕâÖÖÐèÒª¿ç½ÚµãJoin
µÄÐèÇóÒ²²¢²»ÊÇÌ«¶à£¬Ïà¶ÔÓÚ×ÜÌåÐÔÄܶøÑÔ£¬¿ÉÄÜÒ²Ö»ÊǺÜСһ²¿·Ö¶øÒÑ¡£ËùÒÔΪÁËÕûÌåÐÔÄܵĿ¼ÂÇ£¬Å¼¶ûÎþÉüÄÇôһµã
µã£¬ÆäʵÊÇÖµµÃµÄ£¬±Ï¾¹ÏµÍ³ÓÅ»¯±¾Éí¾ÍÊÇ´æÔںܶàÈ¡ÉáºÍƽºâµÄ¹ý³Ì¡£
5.3 ¿ç½ÚµãºÏ²¢ÅÅÐò·ÖÒ³ÎÊÌâ
Ò»µ©½øÐÐÁËÊý¾ÝµÄˮƽÇзÖÖ®ºó£¬¿ÉÄܾͲ¢²»½ö½öÖ»Óпç½ÚµãJoin ÎÞ·¨Õý³£ÔËÐУ¬ÓÐЩÅÅÐò·ÖÒ³µÄQuery
Óï¾äµÄÊý¾ÝÔ´¿ÉÄÜÒ²»á±»Çзֵ½¶à¸ö½Úµã£¬ÕâÑùÔì³ÉµÄÖ±½Óºó¹û¾ÍÊÇÕâЩÅÅÐò·ÖÒ³Query ÎÞ·¨¼ÌÐøÕý³£ÔËÐС£ÆäʵÕâºÍ¿ç½ÚµãJoin
ÊÇÒ»¸öµÀÀí£¬Êý¾ÝÔ´´æÔÚÓÚ¶à¸ö½ÚµãÉÏ£¬ÒªÍ¨¹ýÒ»¸öQuery À´½â¾ö£¬¾ÍºÍ¿ç½ÚµãJoin ÊÇÒ»ÑùµÄ²Ù×÷¡£Í¬ÑùFederated
Ò²¿ÉÒÔ²¿·Ö½â¾ö£¬µ±È»´æÔڵķçÏÕÒ²Ò»Ñù¡£
»¹ÊÇͬÑùµÄÎÊÌ⣬Ôõô°ì£¿ÎÒͬÑùÈÔÈ»¼ÌÐø½¨Òéͨ¹ýÓ¦ÓóÌÐòÀ´½â¾ö¡£
ÈçºÎ½â¾ö£¿½â¾öµÄ˼·´óÌåÉϺͿç½ÚµãJoin µÄ½â¾öÀàËÆ£¬µ«ÊÇÓÐÒ»µãºÍ¿ç½ÚµãJoin
²»Ì«Ò»Ñù£¬Join ºÜ¶àʱºò¶¼ÓÐÒ»¸öÇý¶¯Óë±»Çý¶¯µÄ¹ØÏµ£¬ËùÒÔJoin ±¾ÉíÉæ¼°µ½µÄ¶à¸ö±íÖ®¼äµÄÊý¾Ý¶Áȡһ°ã¶¼»á´æÔÚÒ»¸ö˳Ðò¹ØÏµ¡£µ«ÊÇÅÅÐò·ÖÒ³¾Í²»Ì«Ò»ÑùÁË£¬ÅÅÐò·ÖÒ³µÄÊý¾ÝÔ´»ù±¾ÉÏ¿ÉÒÔ˵ÊÇÒ»¸ö±í£¨»òÕßÒ»¸ö½á¹û¼¯£©£¬±¾Éí²¢²»´æÔÚÒ»¸ö˳Ðò¹ØÏµ£¬ËùÒÔÔÚ´Ó¶à¸öÊý¾ÝÔ´È¡Êý¾ÝµÄ¹ý³ÌÊÇÍêÈ«¿ÉÒÔ²¢Ðеġ£ÕâÑù£¬ÅÅÐò·ÖÒ³Êý¾ÝµÄÈ¡ÊýЧÂÊÎÒÃÇ¿ÉÒÔ×öµÄ±È¿ç¿âJoin
¸ü¸ß£¬ËùÒÔ´øÀ´µÄÐÔÄÜËðʧÏà¶ÔµÄÒª¸üС£¬ÔÚÓÐЩÇé¿öÏ¿ÉÄܱÈÔÚÔÀ´Î´½øÐÐÊý¾ÝÇзֵÄÊý¾Ý¿âÖÐЧÂʸü¸ßÁË¡£µ±È»£¬²»ÂÛÊÇ¿ç½ÚµãJoin
»¹ÊÇ¿ç½ÚµãÅÅÐò·ÖÒ³£¬¶¼»áʹÎÒÃǵÄÓ¦Ó÷þÎñÆ÷ÏûºÄ¸ü¶àµÄ×ÊÔ´£¬ÓÈÆäÊÇÄÚ´æ×ÊÔ´£¬ÒòΪÎÒÃÇÔÚ¶ÁÈ¡·ÃÎÊÒÔ¼°ºÏ²¢½á¹û¼¯µÄÕâ¸ö¹ý³ÌÐèÒª±ÈÔÀ´´¦Àí¸ü¶àµÄÊý¾Ý¡£
·ÖÎöµ½ÕâÀ¿ÉÄܺܶàÅóÓѻᷢÏÖ£¬ÉÏÃæËùÓеÄÕâЩÎÊÌ⣬ÎÒ¸ø³öµÄ½¨Òé»ù±¾É϶¼ÊÇͨ¹ýÓ¦ÓóÌÐòÀ´½â¾ö¡£´ó¼Ò¿ÉÄÜÐÄÀ↑ʼ·¸àÖ¹¾ÁË£¬ÊDz»ÊÇÒòΪÎÒÊÇDBA£¬ËùÒԾͺܶàÊÂÇé¶¼ÈÓ¸øÓ¦Óüܹ¹Ê¦ºÍ¿ª·¢ÈËÔ±ÁË£¿
ÆäʵÍêÈ«²»ÊÇÕâÑù£¬Ê×ÏÈÓ¦ÓóÌÐòÓÉÓÚÆäÌØÊâÐÔ£¬¿ÉÒԷdz£ÈÝÒ××öµ½ºÜºÃµÄÀ©Õ¹ÐÔ£¬µ«ÊÇÊý¾Ý¿â¾Í²»Ò»Ñù£¬±ØÐë½èÖúºÜ¶àÆäËûµÄ·½Ê½²ÅÄÜ×öµ½À©Õ¹£¬¶øÇÒÔÚÕâ¸öÀ©Õ¹¹ý³ÌÖУ¬ºÜÄѱÜÃâ´øÀ´ÓÐЩÔÀ´ÔÚ¼¯ÖÐʽÊý¾Ý¿âÖпÉÒÔ½â¾öµ«±»Çзֿª³ÉÒ»¸öÊý¾Ý¿â¼¯ÈºÖ®ºó¾Í³ÉΪһ¸öÄÑÌâµÄÇé¿ö¡£ÒªÏëÈÃϵͳÕûÌåµÃµ½×î´óÏ޶ȵÄÀ©Õ¹£¬ÎÒÃÇÖ»ÄÜÈÃÓ¦ÓóÌÐò×ö¸ü¶àµÄÊÂÇ飬
À´½â¾öÊý¾Ý¿â¼¯ÈºÎÞ·¨½ÏºÃ½â¾öµÄÎÊÌâ¡£
5.4 С½á£º
ͨ¹ýÊý¾ÝÇзּ¼Êõ½«Ò»¸ö´óµÄMySQL Server Çзֳɶà¸öСµÄMySQL
Server£¬¼È½â¾öÁËдÈëÐÔÄÜÆ¿¾±ÎÊÌ⣬???ʱҲÔÙÒ»´ÎÌáÉýÁËÕû¸öÊý¾Ý¿â¼¯ÈºµÄÀ©Õ¹ÐÔ¡£²»ÂÛÊÇͨ¹ý´¹Ö±Çз֣¬
»¹ÊÇˮƽÇз֣¬¶¼Äܹ»ÈÃϵͳÓöµ½Æ¿¾±µÄ¿ÉÄÜÐÔ¸üС¡£ÓÈÆäÊǵ±ÎÒÃÇʹÓô¹Ö±ºÍˮƽÏà½áºÏµÄÇзַ½·¨Ö®ºó£¬ÀíÂÛÉϽ«²»»áÔÙÓöµ½À©Õ¹Æ¿¾±ÁË¡£
6£¬°¸ÀýÑÝʾ
6.1 ´´½¨Êý¾Ý¿â3¸öʵÀý
6.2 ´´½¨¿âºÍ±íÒÔ¼°Óû§
´´½¨¿â±í
create database `hwdb` /*!40100 default characterset utf8 */; create table uc_user(user_id bigint primarykey, uc_name varchar(200), created_time datetime) engine=innodb charset utf8; |
´´½¨Óû§
grant insert,update,delete,select on hwdb.*to tim@'192.168.%' identified by 'timgood2013'; |
Ö´Ðйý³Ì£º
mysql> create table uc_user(user_idbigint primary key, uc_name varchar(200), created_time datetime) engine=innodbcharset utf8; Query OK, 0 rows affected (0.53 sec)
mysql>
mysql> grant insert,update,delete,selecton
hwdb.* to tim@'192.168.%' identified by 'timgood2013';
Query OK, 0 rows affected (0.03 sec)
mysql> |
6.3 ´´½¨java´úÂëʾÀý
package mysql;
import java.math.BigInteger;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Calendar;
public classMySQLTest {
public static void main(String[] args) {
MySQLTestmt=newMySQLTest();
//
BigIntegerbi = newBigInteger("2015053010401005");
Stringport=mt.getDBPort(bi.longValue());
Connection conn=mt.getConn(port);
mt.insert(conn,bi, "tim--"+bi.longValue());
}
// »ñȡҪ·ÃÎʵÄdb¶Ë¿Ú
public String getDBPort(long user_id){
Stringport="3307";
long v_cast=user_id%3;
if (v_cast==1 ){
port="3308";
}else if(v_cast==2){
port="3309";
}else {
port="3307";
}
return port;
}
// »ñÈ¡Êý¾Ý¿âµÄÁ¬½Ó£¬Èç¹ûÀ©Õ¹µÄ»°£¬¿ÉÒÔµ¥¶À×öÒ»¸ö½Ó¿ÚÌṩ¸ø³ÌÐòÔ±À´µ÷ÓÃËü
public ConnectiongetConn(String port ) {
Connectionconn = null;
try {
Class.forName("com.mysql.jdbc.Driver");
}catch(ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Stringurl = "jdbc:mysql://192.168.52.130:"+port+"/hwdb";
try {
conn= DriverManager.getConnection(url, "tim",
"timgood2013");
}catch(SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("the current db is :"+url);
return conn;
}
// »ñÈ¡ÈÕÆÚ×Ö·û´®
public StringgetTimeByCalendar(){
Calendar cal = Calendar.getInstance();
int year = cal.get(Calendar.YEAR);//»ñÈ¡Äê·Ý
int month=cal.get(Calendar.MONTH);//»ñȡԷÝ
int day=cal.get(Calendar.DATE);//»ñÈ¡ÈÕ
int hour=cal.get(Calendar.HOUR);//Сʱ
int minute=cal.get(Calendar.MINUTE);//·Ö
int second=cal.get(Calendar.SECOND);//Ãë
String strdate=year+"-"+month+"-"+day+"
"+hour+":"+minute+":"+second;
return strdate;
}
// ¿ªÊ¼Â¼ÈëÊý¾Ý
public int insert(Connectioncnn,BigInteger user_id,String
name){
Stringsql="insert intohwdb.uc_user(user_id,uc_name,created_time)values(?,?,?)";
int i=0;
long uid =user_id.longValue();
Connectionconn=cnn;
try{
PreparedStatement preStmt=conn.prepareStatement(sql);
preStmt.setLong(1, uid);
preStmt.setString(2,name);
preStmt.setString(3,getTimeByCalendar());
i=preStmt.executeUpdate();
}
catch (SQLException e)
{
e.printStackTrace();
}
return i;//·µ»ØÓ°ÏìµÄÐÐÊý£¬1ΪִÐгɹ¦
}
}
|
6.4 ²âÊÔ´úÂë
User_id°´ÕÕ×¢²áÄêÔÂÈÕʱ·ÖÃë+9999£¬ÕâÑùµÄ˼·ÊÇ£¬Ò»ÃëÂú×ã9999¸ö²¢·¢£¬Ò²²»»á£¬ÖÁÓÚÈçºÎͳһ¹æ»®ÕâÈ«¾ÖµÄ9999¸ö£¬¿ÉÒÔÉèÖÃÒ»¸ö¾²Ì¬µÄÈ«¾Ö±äÁ¿£¬¶øÇÒÕâ¸öÈ«¾Ö±äÁ¿»á¼°Ê±±£´æµ½Ä³¸öDBÖУ¬ÕâÑù»ù±¾±£Ö¤Á˲»Öظ´£¬±ÈÈçuser_id£º2015053010401005¡¢2015053010401006¡¢2015053010401007£¬²âÊÔ´úÂëÈçÏ£º
MySQLTestmt=newMySQLTest(); // BigIntegerbi = newBigInteger("2015053010401005"); Stringport=mt.getDBPort(bi.longValue()); Connection conn=mt.getConn(port); mt.insert(conn,bi, "tim--"+bi.longValue()); |
1£©Í¨¹ý%3À´»ñÈ¡DBÁ¬½Ó£»
Óà0 --> db1£¨3307¶Ë¿Ú£© Óà1 --> db2£¨3308¶Ë¿Ú£© Óà2 --> db3£¨3309¶Ë¿Ú£© |
2£©²é¿´½á¹û
ÔËÐнáÊøºó£¬¿ÉÒÔÈ¥3¸öʵÀýÏàÓ¦µÄ²é¿´Â¼ÈëµÄÊý¾Ý£¬ÈçÏÂËùʾ£º
IdΪ2015053010401005Ó¦¸Ã¼Èëµ½db1£¨3307¶Ë¿Ú£©
[root@data02 ~]# mysql--socket=/usr/local/mysql3307/mysql.sock -e "select * fromhwdb.uc_user;"; +------------------+-----------------------+---------------------+ | user_id | uc_name | created_time | +------------------+-----------------------+---------------------+ | 2015053010401005 | tim--2015053010401005 |2015-04-30 09:27:48 | +------------------+-----------------------+---------------------+ [root@data02 ~]# |
IdΪ2015053010401006Ó¦¸Ã¼Èëµ½db2£¨3308¶Ë¿Ú£©
[root@data02 ~]# mysql--socket=/usr/local/mysql3308/mysql.sock -e "select * fromhwdb.uc_user;"; +------------------+-----------------------+---------------------+ | user_id | uc_name | created_time | +------------------+-----------------------+---------------------+ | 2015053010401006 | tim--2015053010401006 |2015-04-30 09:27:57 | +------------------+-----------------------+---------------------+ [root@data02 ~]# |
IdΪ2015053010401007Ó¦¸Ã¼Èëµ½db3£¨3309¶Ë¿Ú£©
[root@data02 ~]# mysql--socket=/usr/local/mysql3309/mysql.sock -e "select * fromhwdb.uc_user;"; +------------------+-----------------------+---------------------+ | user_id | uc_name | created_time | +------------------+-----------------------+---------------------+ | 2015053010401007 | tim--2015053010401007| 2015-04-30 09:28:01 | +------------------+-----------------------+---------------------+ [root@data02 ~]# |
6.5×ܽá
»ù±¾ºÍÔ¤ÏëµÄÒ»ÑùµÄ£¬Êý¾Ýͨ¹ýÄ£idÈ¡ÓàÊýµÄ·½·¨£¬Ë®Æ½²ð·Öµ½²»Í¬µÄ¿âÀïÃæ£¬ÕâÀïÖ»ÊǼòµ¥ÑÝʾÁËÏ£¬Êµ¼ÊÉú²úµÄ¸´Ôӳ̶ÈÔ¶±ÈÕâ¸öÒª¸ßµÄ¶à£¬ËùÒÔ´ó¼ÒÓöµ½µÄÎÊÌâ»á¸ü¶à£¬µ«ÊÇˮƽ²ð·ÖµÄÀíÄî¶¼ÊÇÀàËÆµÄ£¬ÕâÌõ·ÊǹâÃ÷µÄ£¬´ó¼Ò¿ÉÒÔ·ÅÐÄ×ßÏÂÈ¥¡£
|