sql server 怎么设置允许远程连接

sql server 怎么设置允许远程连接,第1张

一、首先是要检查SQLServer数据库服务器中是否允许远程链接。其具体 *** 作为:

1、打开数据库,用本地帐户登录,右击第一个选项,选择属性

2、在打开的属性窗口,在其右边点击“连接”,然后再左侧勾上“允许远程连接到此服务器”

二、为微软SQL服务器(MSSQLServer)配置相应协议。

1、依次选择:开始-〉所有程序-〉Microsoft SQL Server 2008-〉配置工具-〉SQL Server配置管理器

2、打开SQL Server配置管理器后,选择SQL Server网络配置下面的MSSQLSERVER,然后看右边里面的TCP/IP是否为“已启用”

三、检查SQL服务器防火墙设置 (快捷步骤-直接关闭防火墙(不安全))

1、在进行完上两步 *** 作后,用户需要做的是对SQL服务器防火墙进行重新配置。在进行这一步 *** 作时,首先找到SQL服务器上那个端口支持TCP/IP协议。用户可以在SQL服务器防火墙已经处于运行状态下,右击“TCP/IP协议”选择“属性”:

SQL服务器上支持TCP/IP协议的是1433端口。下一步要做的是在防火墙的配置中允许1433端口支持TCP/IP协议即可。如果服务器上运行的是Windows 7 *** 作系统,其配置步骤为(其他微软 *** 作系统的做法类似),打开“控制面板”选择“Windows防火墙”选项,然后点击高级选项

2、选择“高级设置”后,在右边菜单栏中找出“具有高级安全选项的Windows防火墙”并将其打开。打开后会发现在左边菜单栏中有“入站规则(Inboud Rules)”选项。将该选项打开,并在右边菜单栏中选择“新建规则(New Rule)”选项

3、打开“新建规则”选项后,利用“新内置绑定规则向导”为1433端口配置“内部绑定协议”配置为适用于TCP/IP协议即可。(前提是,需要完成该步骤以前所述的所有步骤)

最后点击“完成”即可。测试方法:在局域网内找一台电脑,打开SQLServer数据库,然后输入Ip和密码,如果能连接上,就说明已经配置好了

一、连接远程数据库:

1、显示密码

如:MySQL 连接远程数据库(192.168.5.116),端口“3306”,用户名为“root”,密码“123456”

C:/>mysql -h 192.168.5.116 -P 3306 -u root -p123456

2、隐藏密码

如:MySQL 连接本地数据库,用户名为“root”,

C:/>mysql -h localhost -u root -p

Enter password:

二、配置mysql允许远程链接

默认情况下,mysql帐号不允许从远程登陆,只能在localhost登录。本文提供了二种方法设置mysql可以通过远程主机进行连接。

一、改表法

在localhost登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,将"localhost"改称"%"

例如:

#mysql -u root -p

Enter password:

……

mysql>

mysql>update user set host = '%' where user = 'root'

mysql>select host, user from user

二、授权法

例如: 你想myuser使用mypassword(密码)从任何主机连接到mysql服务器的话。

mysql>GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%'IDENTIFIED BY 'mypassword' WITH GRANT OPTION

如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器,并使用mypassword作为密码

mysql>GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3'IDENTIFIED BY

'mypassword' WITH GRANT OPTION

mysql>FLUSH PRIVILEGES

使修改生效,就可以了

常见问题:

1、在采用法二授权法之后,无法在本地登录mysql(如:#mysql -u root -p -h 192.168.5.116

Enter password:

ERROR 1045 (28000): Access denied for user 'root'@'loadb116' (using password: YES)

上例中loadb116是主机名.

解决方法:

1、这时可以使用:mysql -u root -p 登录,进入到mysql后。

mysql>grant all privileges on *.* to 'root'@'loadb116'

identified by '123456' with grant option

Query OK, 0 rows affected (0.00 sec)

mysql>flush privileges

Query OK, 0 rows affected (0.00 sec)

2、在本地使用ip地址登录

# mysql -u root -p -h 192.168.5.116

Enter password:

Welcome to the MySQL monitor. Commands end with or /g.

Your MySQL connection id is 60

Server version: 5.1.45 MySQL Community Server (GPL)

Type 'help' or '/h' for help. Type '/c' to clear the buffer.

mysql>

首先我们在linux系统上安装mysql,本文默认linux系统可以联网或者已经挂载光盘iso了,我们使用命令 apt-get install mysql-server 命令进行安装,安装完成后,查看mysql是否启动,执行命令 ps -e |grep mysql。

请点击输入图片描述

验证初始是否允许远程连接,由于本次虚拟机IP为192.168.2.120,因此我们执行mysql -h 192.168.20.120 -P 3306 -u root -proot(备注:-proot,root指root账号的密码),可以得到结果连接不上。

假如我们不采用远程连接,可以连接上,命令为:mysql -u root -proot。

请点击输入图片描述

请点击输入图片描述

接下来,我们连接上数据库,执行命令use mysql使用mysql数据库。

并查看用户表信息,执行命令为:select Host,User from user。

执行结果如下图所示。

请点击输入图片描述

通过上面步骤可以得到数据表 user内的值,下面我们对表进行更新记录允许远程访问,

执行命令为:update user set Host='%' where User ='root' limit 1

(该条命令意思为更新user表内User值为root的第一条记录的Host值设置为%)更新完成后,执行上一步查询命令进行验证

请点击输入图片描述

执行强制刷新命令flush privileges

执行完毕后,关闭数据库连接。

请点击输入图片描述

更改mysql安装目录下的my.cnf文件。

一般默认路径在/etc/mysql/下,找到bind-address = 127.0.0.1 这一行,可以对其进行删除,注释或者将127.0.0.1更改为0.0.0.0,修改完毕后保存。

请点击输入图片描述

重启mysql,命令为service mysql restart。进行远程登陆测试,可以看到已经允许远程连接了。

请点击输入图片描述


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存