1.MySql-Server 出於安全方面考慮只允許本機(localhost, 127.0.0.1)來連接訪問. 這對於 Web-Server 與 MySql-Server 都在同一台服務器上的網站架構來說是沒有問題的. 但隨着網站流量的增加, 后期服務器架構可能會將 Web-Server 與 MySql-Server 分別放在獨立的服務器上, 以便得到更大性能的提升, 此時 MySql-Server 就要修改成允許 Web-Server 進行遠程連接.
2.不用每次都登到服務器去添加修改表,只要用圖形化界面即可遠程管理。
我們可以按照下面的步驟修改:
1, 登錄 Mysql-Server 連接本地 mysql (默認只允許本地連接)
2, 修改 Mysql-Server 用戶配置
mysql> USE mysql; -- 切換到 mysql DB Database changed mysql> SELECT User, Password, Host FROM user; -- 查看現有用戶,密碼及允許連接的主機 +------+----------+-----------+ | User | Password | Host | +------+----------+-----------+ | root | | localhost | +------+----------+-----------+ 1 row in set (0.00 sec) mysql> -- 只有一個默認的 root 用戶, 密碼為空, 只允許 localhost 連接 12 mysql> -- 下面我們另外添加一個新的 root 用戶, 密碼為空, 只允許 192.168.1.100 連接 mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.100' IDENTIFIED BY '' WITH GRANT OPTION; mysql> -- @'192.168.1.100'可以替換為@‘%’就可任意ip訪問,當然我們也可以直接用 UPDATE 更新 root 用戶 Host, 但不推薦, SQL如下: mysql> -- UPDATE user SET Host='192.168.1.100' WHERE User='root' AND Host='localhost' LIMIT 1; mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) 復制代碼 修改root密碼 mysql> use mysql Database changed mysql> update user set password=PASSWORD('123456') where user='root'; Query OK, 0 rows affected (0.00 sec) Rows matched: 1 Changed: 0 Warnings: 0 mysql> flush privileges; Query OK, 0 rows affected (0.00 sec)
注意:
bind-address = 127.0.0.1若是則刪之。