主要方法就是修改 MySQL按照文件下面的my.cnf文件mysql
首先是找到my.cnf文件,sql
# find / -name 「my.cnf」數據庫
# cd /etc服務器
接下來最好是先備份my.cnf文件,對於初手而言spa
#/etc vi my.cnfrest
以後找到[mysqld]的段,在那段中插入一行:ip
skip-grant-tablesget
這句的做用是讓你不用密碼就能夠登陸MySQLit
接下來就是重啓MySQL了,table
#/etc/init.d/mysqld restart
在接下來就是無密碼登陸MySQL了,
#mysql -uroot -p
回車鍵
接下來就是:
mysql > use mysql
進入到mysql數據庫,而後修改密碼
Mysql > UPDATE user SET password=password(‘123456’) WHERE User=’root’;
最後使權限生效
Mysql > flush privileges ;
到此爲止 mysql密碼就修改爲功了,
而後把my.cnf的修改再改回去,否則 就是不須要密碼就能夠登陸數據庫了,
#/etc vi my.cnf
以後找到[mysqld]的段,刪去先前插入的那一行:
去掉skip-grant-tables
而後退出來,再從新啓動mysql
#/etc/init.d/mysqld restart
接下來就是登陸了,
#mysql -uroot -p
Enter password:123456
回車鍵
---------------------------------------------------------------------分割線------------------------------------------------
在咱們使用mysql數據庫時,有時咱們的程序與數據庫不在同一機器上,這時咱們須要遠程訪問數據庫。缺省狀態下,mysql的用戶沒有遠程訪問的權限。下面介紹兩種方法,解決這一問題。
一、改表法 多是你的賬號不容許從遠程登錄,只能在localhost。這個時候只要在localhost的那臺電腦,登入mysql後,更改 "mysql" 數據庫裏的 "user" 表裏的 "host" 項,從"localhost"改稱"%" mysql -u root -p mysql>use mysql; mysql>update user set host = '%' where user = 'root'; mysql>select host, user from user; 二、受權法 在安裝mysql的機器上運行: 一、d:\mysql\bin\>mysql -h localhost -u root //這樣應該能夠進入MySQL服務器 二、mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION //賦予任何主機訪問數據的權限 例如,你想myuser使用mypassword從任何主機鏈接到mysql服務器的話。 GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%'IDENTIFIED BY 'mypassword' WI TH GRANT OPTION; 若是你想容許用戶myuser從ip爲192.168.1.6的主機鏈接到mysql服務器,並使用mypassword做爲密碼 GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3'IDENTIFIED BY 'mypassword' WITH GRANT OPTION; 三、mysql>FLUSH PRIVILEGES //修改生效 四、mysql>EXIT 退出MySQL服務器,這樣就能夠在其它任何的主機上以root身份登陸