如何让mysql数据库允许被远程连接访问?

如何让mysql数据库允许被远程连接访问?,第1张

第一:更改 “mysql” 数据库里的 “user” 表里的 “host” 项,从”localhost”改称'%'。 \x0d\x0a或者新加条记录,“host” 项为要访问的ip地址,并授权。重启mysql服务。 \x0d\x0a第二:在系统防火墙添加例外端口:3306,并允许例外。 \x0d\x0a\x0d\x0a错误提示: \x0d\x0aERROR 1130: Host '192.168.1.3is not allowed to connect to this MySQL server \x0d\x0a的解决方法: \x0d\x0a1。改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%" \x0d\x0a1.mysql -u root -pvmware\x0d\x0amysql>use mysql\x0d\x0amysql>update user set host = '%where user = 'root'\x0d\x0amysql>select host, user from user \x0d\x0a\x0d\x0a2. 授权法。例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。 \x0d\x0a\x0d\x0aGRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%IDENTIFIED BY 'mypasswordWITH GRANT OPTION\x0d\x0a如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码 \x0d\x0aGRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3IDENTIFIED BY 'mypasswordWITH GRANT OPTION\x0d\x0a\x0d\x0a3.在window自带的防火墙里的例外添加3306端口 \x0d\x0a\x0d\x0a总结: \x0d\x0amysql -u root -p \x0d\x0amysql>use mysql\x0d\x0amysql>select 'hostfrom user where user='root'\x0d\x0amysql>update user set host = '%where user ='root'\x0d\x0amysql>flush privileges\x0d\x0amysql>select '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服务即可完成。

设置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

或者也可以执行:

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

并且须提供远程访问和1433口打开.

参考2005的.Sql Server 2005的1433端口打开和进行远程连接

如何打开sql server 2005 的1433端口

配置工具->Sql Server Configuration Manager->MSSQLSERVER的协议

看看TCP/IP协议是否启动,如果启动,右键菜单点"属性" ,在分页菜单中选"IP地址",把"IP1"和"IP2"中"TCP端口"为1433,

"已启用"改为"是"

配置工具->Sql Server Configuration Manager->SQL Native Client 配置->客户端协议->TCP/IP

选择TCP/IP右键菜单中"属性",确认"默认端口"是1433,"已启用"为"是"

SQL Server 2005 远程连接

配置TCP/IP属性.

Surface Area Configuration -->Database Engine -->Remote Connections --->Using TCP/IT

SQL Server 外围应用配置器—服务和连接外围配置—database englie—远程连接—启用(远程连接的TCP/IP和named pipes)

SQL Server Configuration Manager—SQL2005网络配置—启用TCP/IP和named pipes

-----------------------------------------------------------------------------------------

一般按如上即可.

其他说明见下:

sqlserver2005(Express版),为了便于管理,你还需要去下一个manage管理器,微软的官方网站有

下,安装好manage管理器后,在程序中连接sqlserver2005,下面几点是要注意的。

1. 开启sql2005远程连接功能,开启办法如下,

配置工具->sql

server外围应用配置器->服务和连接的外围应用配置器->打开MSSQLSERVER节点下的Database Engine

节点,先择"远程连接",接下建议选择"同时使用TCP/IP和named pipes",确定后,重启数据库服务就可以了.

2.登陆设置改为,Sql server and windows Authentication方式同时选中,具体设置如下:

manage管理器->windows

Authentication(第一次用windows方式进去),->对象资源管理器中选择你的数据服务器--右键>属

性>security>Sql server and windows Authentication方式同时选中.

3:设置一个Sql server方式的用户名和密码,具体设置如下:

manage管理器->windows Authentication>new query>sp_password null,'sa123456','sa'

这样就设置了一个用户名为sa ,密码为:sa123456的用户,下次在登陆时,可以用Sql server方式,

用户名为sa ,密码为:sa123456的用户进数据库了.

4: 做完上面三步后,这样写连接字符串就可以顺利进入数据库了,

(server=.\\sqlexpressuid=sapwd=sa123456database=master"

其它版本,做如下设置

程序—Microsoft SQL Server 2005—配置工具—SQL Server 外围应用配置器—服务和连接的外围应用配置器—

1、MSSQLserver(实例名)—DataBase Engine—远程连接—(设置选项)

在下方选项

2、SQL Server Browser—服务(停止时只本机访问)

3、程序—Microsoft SQL Server 2005—配置工具—SQL Server Configuration Manager—网络连接协议-选择实例对应协议—启用(shard memory、Named Pipes、TCP\IP)

注: SQL Server 浏览器程序以服务的形式在服务器上运行。SQL Server 浏览器侦听对 Microsoft SQL Server 资源的传入请求,

并提供计算机上安装的 SQL Server 实例的相关信息。

SQL Server 浏览器可用于执行下列三种 *** 作:

浏览可用服务器

连接到正确的服务器实例

连接到专用管理员连接 (DAC) 端点

SQL Server Browser 服务 (sqlbrowser) 为数据库引擎 和 SSAS 的每个实例提供实例名称和版本号。

SQL Server 浏览器随 Microsoft SQL Server 2005 一起安装,

为该计算机上运行的早期版本的 SQL Server(从 Microsoft SQL Server 7.0 开始)提供此服务。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9907832.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-03
下一篇 2023-05-03

发表评论

登录后才能评论

评论列表(0条)

保存