1.起初裝上CentOS7后,mysql數據庫變為Mariadb數據庫。但實際是還是mysql.
2.用戶遠程連接該數據庫發現連接不了。然后關了SElinux,挺了firewall,發現還是不行。
3.查閱資料終於解決:
A.默認root是沒有密碼的,插入host數據 %,修改密碼:
$ mysql -u root mysql> use mysql; mysql> INSERT INTO user(host,user,password) VALUES('%','root',''); mysql> UPDATE user SET Password = PASSWORD('newpass') WHERE user = 'root'; mysql> FLUSH PRIVILEGES;
使用 slect host,user,password from user; 結果如下:
Database changed MariaDB [mysql]> update user set password = password('cosmysql') where user='root'; Query OK, 3 rows affected (0.01 sec) Rows matched: 5 Changed: 3 Warnings: 0 MariaDB [mysql]> flush privileges; Query OK, 0 rows affected (0.00 sec) MariaDB [mysql]> select host,user,password from user; +-----------------------+------+-------------------------------------------+ | host | user | password | +-----------------------+------+-------------------------------------------+ | localhost | root | *F2A7750541679FE9A1CC3ABD453EFC346084637C | | localhost.localdomain | root | *F2A7750541679FE9A1CC3ABD453EFC346084637C | | 127.0.0.1 | root | *F2A7750541679FE9A1CC3ABD453EFC346084637C | | ::1 | root | *F2A7750541679FE9A1CC3ABD453EFC346084637C | | localhost | | | | localhost.localdomain | | | | % | root | *F2A7750541679FE9A1CC3ABD453EFC346084637C | +-----------------------+------+-------------------------------------------+ 7 rows in set (0.00 sec)
B.授權,否則會報 Access denied for user 'root'@'%' to database 'xxx' 的錯
grant all on xxxx.* to 'root'@'%' identified by 'password' with grant option;
xxxx代表創建的數據庫;這里的xxxx為mysql,你也可以用*代替xxxx.那樣遠程登陸就會擁有全部數據庫的訪問權限.
password為用戶密碼,在此為root的密碼
2015年10月18日20:48:53