CentOS下設置MySQL的root密碼以及設置遠程訪問

CentOS剛裝的MySQL通常須要重設MySQL密碼,能夠用如下方法重設。 
方法1、 
Js代碼  
# /etc/init.d/mysqld stop  
# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &  
# mysql -u root mysql   
mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root';   
mysql> FLUSH PRIVILEGES;   
mysql> quit  
# /etc/init.d/mysql restart  
# mysql -uroot -p   
Enter password: <輸入新設的密碼newpassword>   
mysql>  


方法2、 
Js代碼  
直接使用/etc/mysql/debian.cnf文件中[client]節提供的用戶名和密碼:  
# mysql -udebian-sys-maint -p   
Enter password: <輸入[client]節的密碼>   
mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root';   
mysql> FLUSH PRIVILEGES;   
mysql> quit  
# mysql -uroot -p   
Enter password: <輸入新設的密碼newpassword>   
mysql

MySQL>  sql


1.1 支持遠程訪問:(這個不行請看1.2)數據庫

mysql>use mysql;
mysql>update user set host = '%' where user = 'root';   --%能夠改爲ip或者其餘
mysql>select host, user from user;    
服務器

重啓數據庫dom

1.2 遠程訪問

mysql不容許遠程用戶訪問主機服務器 1130 
安裝完以後成 使用 mysql admin鏈接報錯 
ERROR 1130: Host ***.***.***.*** is not allowed to connect to this MySQL server 
如下百度查到的,試過能夠 
說明所鏈接的用戶賬號沒有遠程鏈接的權限,只能在本機(localhost)登陸。 
需更改 mysql 數據庫裏的 user表裏的 host項 
把localhost改稱% 
具體步驟:登錄到mysql 
首先 use mysql; 
按照別人提供的方式update的時候,出現錯誤。 
mysql> update user set host='%' where user = 'root'; 
ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY' 
而後查看了下數據庫的host信息以下: 
mysql> select host from user where user = 'root'; 
+-----------------------+ 
| host | 
+-----------------------+ 
| % | 
| 127.0.0.1 | 
| localhost.localdomain | 
+-----------------------+ 
3 rows in set (0.00 sec) 
host已經有了%這個值,因此直接運行命令: 
mysql>flush privileges; 
再用mysql administrator鏈接...成功!!!ui

相關文章
相關標籤/搜索