JDBCÁ¬½ÓÖ´ÐÐMySQL´æ´¢¹ý³Ì±¨¿ÕÖ¸Õë»òȨÏÞ´íÎó
×î½üʹÓÃrootÓû§±àдÁ˼¸¸ö´æ´¢¹ý³Ì£¬µ«ÊÇʹÓÃÆÕͨÓû§Í¨¹ýJDBCÁ¬½ÓÖ´ÐÐÈ´±¨´í£º
java.lang.NullPointerException......
»ò
java.sql.SQLException: User does not have access to metadata required to determine stored procedure parameter types. If rights can not be granted, configure connection with "noAccessToProcedureBodies=true" to have driver generate parameters that represent INOUT strings irregardless of actual parameter types.
±¨Äĸö´íÒª¿´ÄãʹÓõÄConnector/J°æ±¾ÁË¡£
ÕâÊÇÒòΪJDBCµ÷Óô洢¹ý³ÌʱÐèÒªÓÐshow create procudure ȨÏÞ»òÊÇÓбímysql.procµÄselectȨÏÞ¡£Í¨¹ýÔÚJDBCÁ¬½ÓÊôÐÔÖÐÉèÖÃnoAccessToProcedureBodies=true(ĬÈÏfalse)½â¾ö»òÊÇÊÚÓèÆÕͨÓû§ÏàÓ¦µÄȨÏÞ»òÕßÊÇ°´http://lists.mysql.com/commits/17817ÖеÄpatchÐ޸ġ£
¸ÃnoAccessToProcedureBodies=trueµÄÓ°Ï죺
1. µ÷Óô洢¹ý³Ìʱ£¬½«Ã»ÓÐÀàÐͼì²é£¬ÉèΪ×Ö·û´®ÀàÐÍ£¬²¢ÇÒËùÓеIJÎÊýÉèΪinÀàÐÍ£¬µ«ÊÇÔÚµ÷ÓÃregisterOutParameterʱ£¬²»Å׳öÒì³£¡£
2. ´æ´¢¹ý³ÌµÄ²éѯ½á¹ûÎÞ·¨Ê¹ÓÃgetXXX(String parameterName)µÄÐÎʽ»ñÈ¡£¬Ö»ÄÜͨ¹ýgetXXX(int parameterIndex)µÄ·½Ê½»ñÈ¡¡£
²Î¿¼£º
http://bugs.mysql.com/bug.php?id=20235
http://bugs.mysql.com/bug.php?id=24065
Ïà¹ØÎĵµ£º
Èç¹ûÒ»¸öMyISAM±í°üº¬Èκοɱ䳤¶ÈÁУ¨VARCHAR, BLOB»òTEXTDynamic£©£¬»òÕßÈç¹ûÒ»¸ö±í±»ÓÃROW_FORMAT=DYNAMICÑ¡ÏîÀ´´´½¨£¬¶¯Ì¬´æ´¢¸ñʽ±»Ê¹Óá£
Õâ¸ö¸ñʽ¸üΪ¸´ÔÓÒ»µã£¬ÒòΪÿÐÐÓÐÒ»¸ö±íÃ÷ÐÐÓж೤µÄÍ·¡£µ±Ò»¸ö¼Ç¼ÒòΪ¸üеĽá¹û±»±äµÃ¸ü³¤£¬¸Ã¼Ç¼Ҳ¿ÉÒÔÔÚ³¬¹ýÒ»¸öλÖô¦½áÊø¡£
Äã¿ÉÒÔʹÓÃOPTIMIZE TAB ......
¶¨ÒåÓαê
DECLARE cur_Ãû³Æ CURSOR
FOR
SELECT ×Ö¶Î1,×Ö¶Î2,...×Ö¶În from ±í where ×Ö¶Î1=±äÁ¿;
DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET ±äÁ¿1=null,±äÁ¿2=null;
OPEN cur_Ãû³Æ;
FETCH cur_Ãû³Æ INTO ±äÁ¿1,±äÁ¿2...;
WHILE ( ±äÁ¿1 IS NOT NULL) DO
&nbs ......
ÓÐÁ½ÖÖ·½·¨¡£
·½·¨Ò»£ºÔÚmysql>Ìáʾ·ûÖÐʹÓÃtee
mysql> tee output.txt
Logging to file 'output.txt'
mysql> notee
Outfile disabled.
»òÕß
mysql> \T output.txt
Logging to file 'output.txt'
mysql> \t
Outfile disabled.
Õâ¸öÀàËÆÓÚsqlplusµÄspool¹¦ÄÜ£¬¿ÉÒÔ½«ÃüÁîÐÐÖеĽá¹û±£´æµ½Í ......
±¾ÎÄÌÖÂÛ MySQL µÄ±¸·ÝºÍ»Ö¸´»úÖÆ£¬ÒÔ¼°ÈçºÎά»¤Êý¾Ý±í£¬°üÀ¨×îÖ÷ÒªµÄÁ½ÖÖ±íÀàÐÍ£ºMyISAM ºÍ Innodb£¬ÎÄÖÐÉè¼ÆµÄ MySQL °æ±¾Îª 5.0.22¡£
Ä¿Ç° MySQL Ö§³ÖµÄÃâ·Ñ±¸·Ý¹¤¾ßÓУºmysqldump¡¢mysqlhotcopy£¬»¹¿ÉÒÔÓà SQL Óï·¨½øÐб¸·Ý£ºBACKUP TABLE »òÕß SELECT INTO OUTFILE£¬ÓÖ»òÕß±¸·Ý¶þ½øÖÆÈÕÖ¾£¨binlog£©£¬»¹¿ÉÒÔÊÇ ......
Ê×ÏÈ·ÖÎöÂÒÂëµÄÇé¿ö
1.дÈëÊý¾Ý¿âʱ×÷ΪÂÒÂëдÈë
2.²éѯ½á¹ûÒÔÂÒÂë·µ»Ø
¾¿¾¹ÔÚ·¢ÉúÂÒÂëʱÊÇÄÄÒ»ÖÖÇé¿öÄØ£¿
ÎÒÃÇÏÈÔÚmysql ÃüÁîÐÐÏÂÊäÈë
show variables like '%char%';
²é¿´mysql ×Ö·û¼¯ÉèÖÃÇé¿ö:
mysql> show variables like '%char%';
+--------------------------+---------------------------------------- ......