服务器mysql怎么配置才能远程连接?
设置mysql数据库远程连接:
Windows系统
1、 停止mysql的服务。
2、 进入命令窗口,然后进入MySQL的安装目录,比如我的安装目录是c:\mysql,进入c:\mysql\bin
3、 进入mysql数据库服务器
c:\mysql\bin>mysql –u root –p hkgt123
4、 选中数据库mysql :use mysql
5、 查询mysql数据库中的用户:
Select host,user,password from mysql;
6、 授权给root用户可以从任何主机使用密码为’hkgt123’登录MYSQL数据库:
GRANT ALL PRIVILEGES ON *.* TO root@’%’ IDENTIFIED BY ‘hkgt123’ WITH GRANT OPTION;
7、 提交:commit;
8、 刷新权限:flush privileges;
如何才能让外网访问内网的mysql数据库?
一台电脑上安装了Workbench,现需要访问另一台ubuntu服务器上的MySQL数据库,但mysql默认是不允许访问的,考虑到安全性问题,也不适合使用root用户来访问mysql。
这时我们就需要开放mysql服务器并创建新的用户来访问mysql。快云数据库怎么设置外网访问?
设置mysql服务允许外网访问,修改mysql的配置文件,有的是my.ini,有的是my.cnf【linux】.
1:设置mysql的配置文件
/etc/mysql/my.cnf
找到bind-address=127.0.0.1将其注释掉;//作用是使得不再只允许本地访问;
重启mysql:/etc/init.d/mysqlrestart;
2:登录mysql数据库:mysql-uroot-p
mysql>usemysql;
查询host值:
mysql>selectuser,hostfromuser;
如果没有"%"这个host值,就执行下面这两句:
mysql>updateusersethost='%'whereuser='root';
mysql>flushprivileges;
或者也可以执行:
mysql>grandallprivilegeson*.*toroot@'%'identifiesby'xxxx';
其中第一个*表示数据库名;第二个*表示该数据库的表名;如果像上面那样*.*的话表示所有到数据库下到所有表都允许访问;
‘%':表示允许访问到mysql的ip地址;当然你也可以配置为具体到ip名称;%表示所有ip均可以访问;
后面到‘xxxx'为root用户的password;
举例:
任意主机以用户root和密码mypwd连接到mysql服务器
mysql>GRANTALLPRIVILEGESON*.*TO'root'@'%'IDENTIFIEDBY'mypwd'WITHGRANTOPTION;
mysql>flushprivileges;
IP为192.168.1.102的主机以用户myuser和密码mypwd连接到mysql服务器
mysql>GRANTALLPRIVILEGESON*.*TO'myuser'@'192.168.1.102'IDENTIFIEDBY'mypwd'WITHGRANTOPTION;
mysql>flushprivileges;

