设置mysql的配置文件
配置/etc/mysql/my.cnf
找到 bind-address =127.0.0.1 将其注释掉; //作用是使得不再只允许本地访问;
重启mysql:/etc/init.d/mysql restart;
设置MySQL中mysql数据库的权限
登录数据库
mysql -u root -p
use mysql;
select user, host from user;
若返回的数据中,没有对应%
的host,需要进行设置,例如
mysql> update user set host='%' where user='root';
mysql> flush privileges;
或者
mysql>grand all privileges on *.* to 'root'@'%' identifies by 'xxxx';
其中,*.*
的意思是,第一个*
表示数据库名;第二个*
表示该数据库的表名;如果像上面那样*.*
的话表示所有到数据库下到所有表都允许访问
'%'
:表示允许访问到mysql的ip地址;当然你也可以配置为具体到ip名称;%表示所有ip均可以访问;
后面到'xxxx'
为root 用户的password;
例如:
任意主机以用户root和密码mypwd连接到mysql服务器
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'mypwd' WITH GRANT OPTION;
mysql> flush privileges;
IP为192.168.1.102的主机以用户myuser和密码mypwd连接到mysql服务器
mysql> GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.102' IDENTIFIED BY 'mypwd' WITH GRANT OPTION;
mysql> flush privileges;