十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
设置mysql服务允许外网访问,修改mysql的配置文件,有的是my.ini,有的是my.cnf【linux】.
创新互联专业为企业提供长汀网站建设、长汀做网站、长汀网站设计、长汀网站制作等企业网站建设、网页设计与制作、长汀企业网站模板建站服务,十载长汀做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
1:设置mysql的配置文件
/etc/mysql/my.cnf
找到 bind-address =127.0.0.1 将其注释掉;//作用是使得不再只允许本地访问;
重启mysql:/etc/init.d/mysql restart;
2:登录mysql数据库:mysql -u root -p
mysql use mysql;
查询host值:
mysql select user,host from user;
如果没有"%"这个host值,就执行下面这两句:
mysql update user set host='%' where user='root';
mysql flush privileges;
或者也可以执行:
mysqlgrand 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;
在路由器配置DDNS,并填上DDNS的服务提供商的账号:(需要注册)
如华为AR系列路由器的界面如下:
然后把MySQL的端口TCP3306映射出去即可。
整体简介:
为了安全起见默认情况下Mysql数据库的监听地址是127.0.0.1,就是指本机下的程序才能访问。
监听地址是0.0.0.0 ,表示该mysql允许所有IP地址进行连接,这是允许远程连接的基础
监听地址是127.0.0.1,则代表该mysql只允许所在服务器本机连接,外网是无法连接的
所需工具原料:
Linux,apache,php,mysql
解决方法:
1. 用命令vi 编辑/etc/mysql/my.cnf 如图:
在[mysqld]节中增加下面一行:
2. bind-address=0.0.0.0 #全部地址或者指定的ip地址如图所示
3. 重启服务
service mysqld restart
4. Linux服务器中执行如下命令可以查看: netstat -nutlp|grep mysql(只查看mysql的监听), netstat -tln(查看所有的监听)是否成功。
第一:更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从”localhost”改称'%'。\x0d\x0a或者新加条记录,“host” 项为要访问的ip地址,并授权。重启mysql服务。\x0d\x0a第二:在系统防火墙添加例外端口:3306,并允许例外。错误提示:\x0d\x0aERROR 1130: Host '192.168.1.3' is not allowed to connect to this MySQL server\x0d\x0a的解决方法: 1。 改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"\x0d\x0amysql -u root -pvmwaremysqluse mysql;mysqlupdate user set host = '%' where user = 'root';mysqlselect host, user from user; 2. 授权法。例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。\x0d\x0aGRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;\x0d\x0a如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码\x0d\x0aGRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;\x0d\x0a3.在window自带的防火墙里的例外添加3306端口\x0d\x0a总结:mysql -u root -p\x0d\x0amysqluse mysql;\x0d\x0amysqlselect 'host' from user where user='root';\x0d\x0amysqlupdate user set host = '%' where user ='root';\x0d\x0amysqlflush privileges;\x0d\x0amysqlselect 'host' from user where user='root';\x0d\x0a第一句是以权限用户root登录\x0d\x0a第二句:选择mysql库\x0d\x0a第三句:查看mysql库中的user表的host值(即可进行连接访问的主机/IP名称)\x0d\x0a第四句:修改host值(以通配符%的内容增加主机/IP地址),当然也可以直接增加IP地址\x0d\x0a第五句:刷新MySQL的系统权限相关表\x0d\x0a第六句:再重新查看user表时,有修改。。\x0d\x0a重起mysql服务即可完成。
不可以访问,用IP能访问的话,那一般是你电脑被病毒或木马感染了,人家在幕后远程遥控你的机子,这种设置太麻烦。
装个远程控制软件是最简单的了:QQ也可以远程控制的,在工具里面有个远程控制,连接对方,然后点“申请控制”就能让他操作你的电脑了。
但QQ网速会卡,KDT快递通专门的远程遥控软件,网上下载个,安装一下,在对话框中的动作中选择“接受对方控制”就连上了,速度绝对快。
可以使用命令远程连接mysql数据库(前提是mysql里面用户名和登录网段已经经过了授权)
mysql -u用户名 -p密码 -h 数据库IP