如何建立远程mysql数据库服务器

如何建立远程mysql数据库服务器,第1张

Mysql提供了一套CAPI函数,可以直接 *** 纵数据库(功能还是很强大的).用VC开发一个客户端程序,需要连接一个远程的数据库.第一步:建立一个MYSQL"对象",然后对其初始化(文档中要求的)第二步:使用mysql_real_connect函数连接,不建议使用mysql_connect(这是一个较早的版本)注意:通过TCP/IP方式连接,所以HOST一项填服务器的IP地址,例如:166.111.***.***其次,提供登陆名(USER)和密码(PWD),以及默认连接的数据库名称.当Mysql建构在一台linux服务器上,自然存在linux本身的密码校验.我不知道有什么好的方法,只是试着将数据库的username和pwd设置的和linux的一致,然后求通过了

一、连接远程数据库:

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>

首先检查SQL数据库服务器中是否允许远程链接。其具体 *** 作如下:

(1)右击SQL Server 2008选项,选择SQL Server 2008 Management Studio:

(2)打开“服务器属性(Server Properties)” (右键连接名称-属性)

选择“允许用户对该服务器进行远程链接”选项后,检查是否问题已经排除。如果远程链接已经成功,该过程已经完成。若用户发现“提醒错误对话框”依然d出,那么还需要做的是:

(二)检查SQL网络链接配置。其具体 *** 作如下:

打开“SQL服务器配置管理”选项>打开“该节点的SQL服务器网络配置选项”>选择“微软SQL 服务器网络协议”选项(或用户的SQL服务器中为SQL服务器配置网络协议的选项,不同版本的SQL名称可能不同):

设置完成后重启sql服务(net stop mssqlserver net start mssqlserver)

确定“微软SQL服务器网络选项协议”中的TCP/IP协议对服务器来说是有效的。再次检查是否已经可以执行远程链接。若“错误提醒对话框”依然d出,需要进一步检查SQL服务器防火墙选项。

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

果在进行完上两步 *** 作后,用户端计算机仍然无法远程链接到SQL服务器,用户需要做的是对SQL服务器防火墙进行重新配置。在进行这一步 *** 作时,首先找到

SQL服务器上那个端口支持TCP/IP协议。用户可以在SQL服务器防火墙已经处于运行状态下,点击“TCP/IP协议”选择“属性”:

上图中可以看出,这台SQL服务器上支持TCP/IP协议的是1433端口。下一步要做的是在防火墙的配置中允许1433端口支持TCP/IP协议

即可。如果服务器上运行的是Windows

7 *** 作系统,其配置步骤为(其他微软 *** 作系统的做法类似),打开“控制面板”选择“Windows防火墙”选项:

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

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

以上全部都没问题了之后打开SQL2008,输入远程服务器名或IP、登录名及密码就可以连接到远程服务器上了。


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存