如题所述
å¦æä¸æ¯rootå¯ç ï¼ç¨rootè¿å»ï¼ä¿®æ¹mysqlæ°æ®åºuser表å¯ã
å¦ææ¯rootå¯ç ï¼
æ¹æ³ä¸ï¼
MySQLæä¾è·³è¿è®¿é®æ§å¶çå½ä»¤è¡åæ°ï¼éè¿å¨å½ä»¤è¡ä»¥æ¤å½ä»¤å¯å¨MySQLæå¡å¨ï¼
safe_mysqld --skip-grant-tables&
å³å¯è·³è¿MySQLç访é®æ§å¶ï¼ä»»ä½äººé½å¯ä»¥å¨æ§å¶å°ä»¥ç®¡çåç身份è¿å ¥MySQLæ°æ®åºã
éè¦æ³¨æçæ¯å¨ä¿®æ¹å®å¯ç 以åè¦æMySQLæå¡å¨åæéæ°å¯å¨æä¼çæ
æ¹æ³äºï¼
å¯ä»¥è¿è¡å¦ä¸çæ¥éª¤éæ°è®¾ç½®MySQLçrootå¯ç ï¼
1ï¼é¦å 确认æå¡å¨åºäºå®å ¨çç¶æï¼ä¹å°±æ¯æ²¡æ人è½å¤ä»»æå°è¿æ¥MySQLæ°æ®åºã
å 为å¨éæ°è®¾ç½®MySQLçrootå¯ç çæé´ï¼MySQLæ°æ®åºå®å ¨åºäºæ²¡æå¯ç ä¿æ¤ç
ç¶æä¸ï¼å ¶ä»çç¨æ·ä¹å¯ä»¥ä»»æå°ç»å½åä¿®æ¹MySQLçä¿¡æ¯ãå¯ä»¥éç¨å°MySQL对
å¤ç端å£å°éï¼å¹¶ä¸åæ¢Apache以åææçç¨æ·è¿ç¨çæ¹æ³å®ç°æå¡å¨çåå®å ¨
ç¶æãæå®å ¨çç¶ææ¯å°æå¡å¨çConsoleä¸é¢æä½ï¼å¹¶ä¸ææç½çº¿ã
2ï¼ä¿®æ¹MySQLçç»å½è®¾ç½®ï¼
# vi /etc/my.cnf
å¨[mysqld]ç段ä¸å ä¸ä¸å¥ï¼skip-grant-tables
ä¾å¦ï¼
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
skip-name-resolve
skip-grant-tables
ä¿å并ä¸éåºviã
3ï¼éæ°å¯å¨mysqld
# /etc/init.d/mysqld restart
Stopping MySQL: [ OK ]
Starting MySQL: [ OK ]
4ï¼ç»å½å¹¶ä¿®æ¹MySQLçrootå¯ç
# /usr/bin/mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3 to server version: 3.23.56
Type âhelp;â or â\hâ for help. Type â\câ to clear the buffer.
mysql> USE mysql ;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> UPDATE user SET Password = password ( ânew-passwordâ ) WHERE User = ârootâ ;
Query OK, 0 rows affected (0.00 sec)
Rows matched: 2 Changed: 0 Warnings: 0
mysql> flush privileges ;
Query OK, 0 rows affected (0.01 sec)
mysql> quit
Bye
5ï¼å°MySQLçç»å½è®¾ç½®ä¿®æ¹åæ¥
# vi /etc/my.cnf
å°åæå¨[mysqld]ç段ä¸å ä¸çskip-grant-tableså é¤
ä¿å并ä¸éåºviã
6ï¼éæ°å¯å¨mysqld
# /etc/init.d/mysqld restart
Stopping MySQL: [ OK ]
Starting MySQL: [ OK ]
windows
1.以系ç»ç®¡çå身份ç»éç³»ç»ã
2.æå¼cmdâânet start æ¥çmysqlæ¯å¦å¯å¨ãå¯å¨çè¯å°±åæ¢net stop mysql.
3.æçmysqlå®è£ å¨d:\usr\local\mysql4\binä¸ã
4.è·³è¿æéæ£æ¥å¯å¨mysql.
d:\usr\local\mysql4\bin\mysqld-nt âskip-grant-tables
5.éæ°æå¼cmdãè¿å°d:\usr\local\mysql4\binä¸ï¼
d:\usr\local\mysql4\bin\mysqladmin -uroot flush-privileges password ânewpasswordâ
d:\usr\local\mysql4\bin\mysqladmin -u root -p shutdown è¿å¥æç¤ºä½ éæ°è¾å¯ç ã
6.å¨cmdénet start mysql
7.æå®äºã
2ï¼MySQL4.1以ä¸çæ¬ä¸ç§å¯ç é误é®é¢ç解å³æ¹æ³
1 # SET PASSWORD FOR âsome_userâ@âsome_hostâ = OLD_PASSWORD(ânewpwdâ);
2 # FLUSH PRIVILEGES;
3ï¼Mysqlæ°æ®åºä¿®å¤
myisamchk -r -q d:\mysql\data\latin1\*
r代表修å¤
q代表快é
d:\mysql\data\latin1\*æ°æ®åºéé¢ *代表éé¢çææçæ件
æ¹æ³ä¸ï¼
å¦æä½ å¿è®°äºä½ çMYSQLçrootå£ä»¤çè¯ï¼ä½ å¯ä»¥éè¿ä¸é¢çè¿ç¨æ¢å¤ã
1. åmysqld server åékillå½ä»¤å ³æmysqld server(ä¸æ¯ kill -9),åæ¾è¿ç¨IDçæ件é常å¨MYSQLçæ°æ®åºæå¨çç®å½ä¸ã
kill `cat /mysql-data-directory/hostname.pid`
ä½ å¿ é¡»æ¯UNIXçrootç¨æ·æè æ¯ä½ æè¿è¡çSERVERä¸çåçç¨æ·ï¼æè½æ§è¡è¿ä¸ªæä½ã
2. 使ç¨`--skip-grant-tables' åæ°æ¥å¯å¨ mysqldã
3. 使ç¨`mysql -h hostname mysql'å½ä»¤ç»å½å°mysqld server ï¼ç¨grantå½ä»¤æ¹åå£ä»¤ãä½ ä¹å¯ä»¥è¿æ ·åï¼`mysqladmin -h hostname -u user password 'new password''ã
ï¼å ¶å®ä¹å¯ä»¥ç¨use mysql; update user set password =password('yourpass') where user='root' æ¥åå°ãï¼
4. è½½å ¥æéè¡¨ï¼ `mysqladmin -h hostname flush-privileges' ï¼æè ä½¿ç¨ SQL å½ä»¤`FLUSH PRIVILEGES'ãï¼å½ç¶ï¼å¨è¿éï¼ä½ ä¹å¯ä»¥éå¯mysqldãï¼
æ¹æ³åï¼(ä¸å®è¦å å¤ä»½)
1ï¼éæ°å¨å¦ä¸å°çµèä¸å®è£ ç¸åçæ¬çMySQL
2ï¼å é¤å¿è®°å¯ç ççµèä¸MySQLå®è£ ç®å½ä¸\data\mysqlçå ¨é¨å 容ï¼è¦å åæ¢MySQLæå¡ï¼
3ï¼Copyæ°è£ ççµèä¸MySQLå®è£ ç®å½ä¸\data\mysqlçå ¨é¨å 容 to ååå é¤çç®å½ä¸
4ï¼å¯å¨MySQLæå¡
è¿æ ·å°±åªæä¸ä¸ªrootç¨æ·äºï¼è®¾ç½®å¯ç
å¦ææ¯rootå¯ç ï¼
æ¹æ³ä¸ï¼
MySQLæä¾è·³è¿è®¿é®æ§å¶çå½ä»¤è¡åæ°ï¼éè¿å¨å½ä»¤è¡ä»¥æ¤å½ä»¤å¯å¨MySQLæå¡å¨ï¼
safe_mysqld --skip-grant-tables&
å³å¯è·³è¿MySQLç访é®æ§å¶ï¼ä»»ä½äººé½å¯ä»¥å¨æ§å¶å°ä»¥ç®¡çåç身份è¿å ¥MySQLæ°æ®åºã
éè¦æ³¨æçæ¯å¨ä¿®æ¹å®å¯ç 以åè¦æMySQLæå¡å¨åæéæ°å¯å¨æä¼çæ
æ¹æ³äºï¼
å¯ä»¥è¿è¡å¦ä¸çæ¥éª¤éæ°è®¾ç½®MySQLçrootå¯ç ï¼
1ï¼é¦å 确认æå¡å¨åºäºå®å ¨çç¶æï¼ä¹å°±æ¯æ²¡æ人è½å¤ä»»æå°è¿æ¥MySQLæ°æ®åºã
å 为å¨éæ°è®¾ç½®MySQLçrootå¯ç çæé´ï¼MySQLæ°æ®åºå®å ¨åºäºæ²¡æå¯ç ä¿æ¤ç
ç¶æä¸ï¼å ¶ä»çç¨æ·ä¹å¯ä»¥ä»»æå°ç»å½åä¿®æ¹MySQLçä¿¡æ¯ãå¯ä»¥éç¨å°MySQL对
å¤ç端å£å°éï¼å¹¶ä¸åæ¢Apache以åææçç¨æ·è¿ç¨çæ¹æ³å®ç°æå¡å¨çåå®å ¨
ç¶æãæå®å ¨çç¶ææ¯å°æå¡å¨çConsoleä¸é¢æä½ï¼å¹¶ä¸ææç½çº¿ã
2ï¼ä¿®æ¹MySQLçç»å½è®¾ç½®ï¼
# vi /etc/my.cnf
å¨[mysqld]ç段ä¸å ä¸ä¸å¥ï¼skip-grant-tables
ä¾å¦ï¼
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
skip-name-resolve
skip-grant-tables
ä¿å并ä¸éåºviã
3ï¼éæ°å¯å¨mysqld
# /etc/init.d/mysqld restart
Stopping MySQL: [ OK ]
Starting MySQL: [ OK ]
4ï¼ç»å½å¹¶ä¿®æ¹MySQLçrootå¯ç
# /usr/bin/mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3 to server version: 3.23.56
Type âhelp;â or â\hâ for help. Type â\câ to clear the buffer.
mysql> USE mysql ;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> UPDATE user SET Password = password ( ânew-passwordâ ) WHERE User = ârootâ ;
Query OK, 0 rows affected (0.00 sec)
Rows matched: 2 Changed: 0 Warnings: 0
mysql> flush privileges ;
Query OK, 0 rows affected (0.01 sec)
mysql> quit
Bye
5ï¼å°MySQLçç»å½è®¾ç½®ä¿®æ¹åæ¥
# vi /etc/my.cnf
å°åæå¨[mysqld]ç段ä¸å ä¸çskip-grant-tableså é¤
ä¿å并ä¸éåºviã
6ï¼éæ°å¯å¨mysqld
# /etc/init.d/mysqld restart
Stopping MySQL: [ OK ]
Starting MySQL: [ OK ]
windows
1.以系ç»ç®¡çå身份ç»éç³»ç»ã
2.æå¼cmdâânet start æ¥çmysqlæ¯å¦å¯å¨ãå¯å¨çè¯å°±åæ¢net stop mysql.
3.æçmysqlå®è£ å¨d:\usr\local\mysql4\binä¸ã
4.è·³è¿æéæ£æ¥å¯å¨mysql.
d:\usr\local\mysql4\bin\mysqld-nt âskip-grant-tables
5.éæ°æå¼cmdãè¿å°d:\usr\local\mysql4\binä¸ï¼
d:\usr\local\mysql4\bin\mysqladmin -uroot flush-privileges password ânewpasswordâ
d:\usr\local\mysql4\bin\mysqladmin -u root -p shutdown è¿å¥æç¤ºä½ éæ°è¾å¯ç ã
6.å¨cmdénet start mysql
7.æå®äºã
2ï¼MySQL4.1以ä¸çæ¬ä¸ç§å¯ç é误é®é¢ç解å³æ¹æ³
1 # SET PASSWORD FOR âsome_userâ@âsome_hostâ = OLD_PASSWORD(ânewpwdâ);
2 # FLUSH PRIVILEGES;
3ï¼Mysqlæ°æ®åºä¿®å¤
myisamchk -r -q d:\mysql\data\latin1\*
r代表修å¤
q代表快é
d:\mysql\data\latin1\*æ°æ®åºéé¢ *代表éé¢çææçæ件
æ¹æ³ä¸ï¼
å¦æä½ å¿è®°äºä½ çMYSQLçrootå£ä»¤çè¯ï¼ä½ å¯ä»¥éè¿ä¸é¢çè¿ç¨æ¢å¤ã
1. åmysqld server åékillå½ä»¤å ³æmysqld server(ä¸æ¯ kill -9),åæ¾è¿ç¨IDçæ件é常å¨MYSQLçæ°æ®åºæå¨çç®å½ä¸ã
kill `cat /mysql-data-directory/hostname.pid`
ä½ å¿ é¡»æ¯UNIXçrootç¨æ·æè æ¯ä½ æè¿è¡çSERVERä¸çåçç¨æ·ï¼æè½æ§è¡è¿ä¸ªæä½ã
2. 使ç¨`--skip-grant-tables' åæ°æ¥å¯å¨ mysqldã
3. 使ç¨`mysql -h hostname mysql'å½ä»¤ç»å½å°mysqld server ï¼ç¨grantå½ä»¤æ¹åå£ä»¤ãä½ ä¹å¯ä»¥è¿æ ·åï¼`mysqladmin -h hostname -u user password 'new password''ã
ï¼å ¶å®ä¹å¯ä»¥ç¨use mysql; update user set password =password('yourpass') where user='root' æ¥åå°ãï¼
4. è½½å ¥æéè¡¨ï¼ `mysqladmin -h hostname flush-privileges' ï¼æè ä½¿ç¨ SQL å½ä»¤`FLUSH PRIVILEGES'ãï¼å½ç¶ï¼å¨è¿éï¼ä½ ä¹å¯ä»¥éå¯mysqldãï¼
æ¹æ³åï¼(ä¸å®è¦å å¤ä»½)
1ï¼éæ°å¨å¦ä¸å°çµèä¸å®è£ ç¸åçæ¬çMySQL
2ï¼å é¤å¿è®°å¯ç ççµèä¸MySQLå®è£ ç®å½ä¸\data\mysqlçå ¨é¨å 容ï¼è¦å åæ¢MySQLæå¡ï¼
3ï¼Copyæ°è£ ççµèä¸MySQLå®è£ ç®å½ä¸\data\mysqlçå ¨é¨å 容 to ååå é¤çç®å½ä¸
4ï¼å¯å¨MySQLæå¡
è¿æ ·å°±åªæä¸ä¸ªrootç¨æ·äºï¼è®¾ç½®å¯ç
温馨提示:答案为网友推荐,仅供参考