ºìÁªLinuxÃÅ»§
Linux°ïÖú

ÔÚMySQLÊý¾Ý¿âÖÐÈçºÎÀ´¸´Î»¸ùÓû§µÄÃÜÂë

·¢²¼Ê±¼ä:2007-12-18 00:02:39À´Ô´:ºìÁª×÷Õß:Enlist
Èç¹ûÄã´ÓδΪMySQLÉèÖøùÓû§ÃÜÂ룬·þÎñÆ÷ÔÚÒÔ¸ùÓû§Éí·Ý½øÐÐÁ¬½Óʱ²»ÐèÒªÃÜÂë¡£µ«ÊÇ£¬½¨ÒéÄãΪÿ¸öÕË»§ÉèÖÃÃÜÂë¡£

Èç¹ûÄãÒÔÇ°ÉèÖÃÁ˸ùÓû§ÃÜÂ룬µ«È´Íü¼ÇÁ˸ÃÃÜÂ룬¿ÉÉèÖÃеÄÃÜÂë¡£ÏÂÊö²½ÖèÊÇÕë¶ÔWindowsƽ̨µÄ¡£ÔÚ±¾½ÚºóÃæµÄÄÚÈÝÖУ¬½éÉÜÁËÕë¶ÔUnixƽ̨µÄ²½Öè¡£

ÔÚWindowsƽ̨Ï£¬¸Ã²½ÖèÊÇ£º

ÒÔϵͳ¹ÜÀíÔ±Éí·ÝµÇ¼µ½ÏµÍ³¡£

Èç¹ûMySQL·þÎñÆ÷ÕýÔÚÔËÐУ¬Í£Ö¹Ëü¡£¶ÔÓÚ×÷ΪWindows·þÎñÔËÐеķþÎñÆ÷£¬½øÈë·þÎñ¹ÜÀíÆ÷£º

¿ªÊ¼²Ëµ¥->¿ØÖÆÃæ°å->¹ÜÀí¹¤¾ß->·þÎñ

È»ºóÔÚÁбíÖÐÕÒ³öMySQL·þÎñÆ÷£¬²¢Í£Ö¹Ëü¡£

Èç¹û·þÎñÆ÷²»ÊÇ×÷Ϊ·þÎñ¶øÔËÐеģ¬¿ÉÄÜÐèҪʹÓÃÈÎÎñ¹ÜÀíÆ÷À´Ç¿ÖÆÍ£Ö¹Ëü¡£

´´½¨1¸öÎı¾Îļþ£¬²¢½«ÏÂÊöÃüÁîÖÃÓÚµ¥Ò»ÐÐÖУº

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPassword');

ÓÃÈÎÒâÃû³Æ±£´æ¸ÃÎļþ¡£ÔÚ±¾ÀýÖУ¬¸ÃÎļþΪC:\mysql-init.txt¡£

´ò¿ª¿ØÖÆ̨´°¿Ú£¬½øÈëDOSÃüÁîÌáʾ£º

¿ªÊ¼²Ëµ¥->ÔËÐÐ-> cmd

¼Ù¶¨ÄãÒѽ«MySQL°²×°µ½C:\mysql¡£Èç¹ûÄ㽫MySQL°²×°µ½ÁËÁíһλÖã¬Çë¶ÔÏÂÊöÃüÁî½øÐÐÏàÓ¦µÄµ÷Õû¡£

ÔÚDOSÃüÁîÌáʾ·ûÏ£¬Ö´ÐÐÃüÁ

C:\> C:\mysql\bin\mysqld-nt --init-file=
C:\mysql-init.txt

ÔÚ·þÎñÆ÷Æô¶¯Ê±£¬Ö´ÐÐÓÉ¡°--init-file¡±Ñ¡ÏîÃüÃûµÄÎļþµÄÄÚÈÝ£¬¸ü¸Ä¸ùÓû§ÃÜÂë¡£µ±·þÎñÆ÷³É¹¦Æô¶¯ºó£¬Ó¦É¾³ýC:\mysql-init.txt¡£

Èç¹ûÄãʹÓÃMySQL°²×°Ïòµ¼°²×°ÁËMySQL£¬»òÐíÐèÒªÖ¸¶¨¡°--defaults-file¡±Ñ¡Ï

C:\> C:\Program Files\MySQL\MySQL Server 5.1\bin\mysqld-nt.exe
--defaults-file="C:\Program Files\MySQL\MySQL Server 5.1\my.ini"
--init-file=C:\mysql-init.txt

ʹÓ÷þÎñ¹ÜÀíÆ÷£¬¿ÉÕÒµ½Ç¡µ±µÄ¡°--defaults-file¡±ÉèÖãº

¿ªÊ¼²Ëµ¥->¿ØÖÆÃæ°å->¹ÜÀí¹¤¾ß->·þÎñ

ÔÚÁбíÖÐÕÒ³öMySQL·þÎñ£¬ÓÒ»÷£¬²¢Ñ¡Ôñ¡°ÊôÐÔ¡±Ñ¡Ïî¡£ÔÚ¿ÉÖ´ÐÐ×ֶεÄPath£¨Â·¾¶£©Öаüº¬¡°--defaults-file¡±ÉèÖá£

Í£Ö¹MySQL·þÎñÆ÷£¬È»ºóÔÚÕý³£Ä£Ê½ÏÂÖØÆôËü¡£Èç¹ûÒÔ·þÎñ·½Ê½ÔËÐзþÎñÆ÷£¬Ó¦´ÓWindows·þÎñ´°¿ÚÆô¶¯Ëü¡£Èç¹ûÒÔÊÖ¶¯·½Ê½Æô¶¯ÁË·þÎñÆ÷£¬Äܹ»ÏñÕý³£ÇéÐÎÏÂÒ»ÑùʹÓÃÃüÁî¡£

Ó¦ÄÜʹÓÃÐÂÃÜÂë½øÐÐÁ¬½Ó¡£

ÔÚUnix»·¾³Ï£¬ÖØÖøùÓû§ÃÜÂëµÄ²½ÖèÈçÏ£º

ÒÔUnix¸ùÓû§Éí·Ý¡¢»òÒÔÔËÐÐmysqld·þÎñÆ÷µÄÏàͬÉí·ÝµÇ¼µ½ÏµÍ³¡£

ÕÒµ½°üº¬·þÎñÆ÷½ø³ÌIDµÄ.pidÎļþ¡£¸ÃÎļþµÄ׼ȷλÖúÍÃû³ÆÈ¡¾öÓÚÄãµÄ·Ö·¢°æ¡¢Ö÷»úÃûºÍÅäÖᣳ£¼ûλÖÃÊÇ/var/lib/mysql/¡¢/var/run/mysqld/ºÍ/usr/local/mysql/data/¡£Ò»°ãÇé¿öÏ£¬ÎļþÃûµÄÀ©Õ¹ÃûΪ.pid£¬²¢ÒÔmysqld»òϵͳµÄÖ÷»úÃû¿ªÊ¼¡£

ÔÚÏÂÊöÃüÁîÖÐʹÓÃ.pidÎļþµÄ·¾¶Ãû£¬Ïòmysqld½ø³Ì·¢³öÕý³£µÄkill£¨¶ø²»ÊÇkill -9£©£¬¿ÉÍ£Ö¹MySQL·þÎñÆ÷£º

shell> kill `cat /mysql-data-directory/host_name.pid`

×¢Ò⣬catÃüÁîʹÓ÷ûºÅ¡°`¡±¶ø²»ÊÇ¡°¡¯¡±£ºÕâ»áʹcatµÄÊä³ö´úÈëµ½killÃüÁîÖС£

´´½¨Îı¾Îļþ£¬²¢½«ÏÂÊöÃüÁî·ÅÔÚÎļþÄÚµÄ1ÐÐÉÏ£º

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPassword');

ÓÃÈÎÒâÃû³Æ±£´æÎļþ¡£¶ÔÓÚ±¾Àý£¬ÎļþΪ~/mysql-init¡£

ÓÃÌØÊâµÄ¡°--init-file=~/mysql-init¡±Ñ¡ÏîÖØÆôMySQL·þÎñÆ÷£º

shell> mysqld_safe --init-file=~/mysql-init &

Îļþinit-fileµÄÄÚÈÝÔÚ·þÎñÆ÷Æô¶¯Ê±Ö´ÐУ¬¸ü¸Ä¸ùÓû§ÃÜÂë¡£·þÎñÆ÷³É¹¦Æô¶¯ºó£¬Ó¦É¾³ý~/mysql-init¡£

Ó¦ÄÜʹÓÃÐÂÃÜÂë½øÐÐÁ¬½Ó¡£

×÷Ϊ¿ÉÑ¡·½Ê½£¬ÔÚÈκÎƽ̨ÉÏ£¬¿ÉʹÓÃmysql¿Í»§¶ËÉèÖÃÐÂÃÜÂ루µ«¸Ã·½·¨²»¹»°²È«£©£º

Í£Ö¹mysqld£¬²¢Óá°--skip-grant-tables --user=root¡±Ñ¡ÏîÖØÆôËü£¨WindowsÓû§¿ÉÊ¡ÂÔ--user=root²¿·Ö£©¡£

ʹÓÃÏÂÊöÃüÁîÁ¬½Óµ½mysqld·þÎñÆ÷£º

shell> mysql -u root

ÔÚmysql¿Í»§¶Ë·¢³öÏÂÊöÓï¾ä£º

mysql> UPDATE mysql.user SET Password=PASSWORD('newpwd')
-> WHERE User='root';
mysql> FLUSH PRIVILEGES;

ÓôòËãʹÓõÄʵ¼Ê¸ùÓû§ÃÜÂëÌæ»»¡°newpwd¡±¡£

Ó¦ÄÜʹÓÃÐÂÃÜÂë½øÐÐÁ¬½Ó¡£
ÎÄÕÂÆÀÂÛ

¹²ÓÐ 0 ÌõÆÀÂÛ