远程连接mysql

来源:互联网 发布:化妆品淘宝店铺名 编辑:程序博客网 时间:2024/06/05 00:13

在另外一台机子上面安装了mysql,为了一些原因,需要用程序对其进行连接。

测试代码如下:(来源:http://www.cnblogs.com/AndyHoo/archive/2012/07/21/2601883.html)

#include <stdio.h>#include <winsock2.h>#include <mysql.h>/*数据库连接用宏*/#define HOST "211.69.206.18"#define USERNAME "j1"#define PASSWORD "123123"#define DATABASE "test"void query_sql(char * sql);int main(){char *query;query="select * from JAFFER";query_sql(query);return 0;}void query_sql(char* sql){MYSQL my_connection; /*这是一个数据库连接*/int res; /*执行sql語句后的返回标志*/MYSQL_RES *res_ptr; /*指向查询结果的指针*/MYSQL_FIELD *field; /*字段结构指针*/MYSQL_ROW result_row; /*按行返回的查询信息*/int row, column; /*查询返回的行数和列数*/int i, j;/*初始化mysql连接my_connection*/mysql_init(&my_connection);/*建立mysql连接*/if (NULL != mysql_real_connect(&my_connection, HOST, USERNAME, PASSWORD,DATABASE, 0, NULL, CLIENT_FOUND_ROWS))  /*连接成功*/{printf("数据库查询query_sql连接成功!\n");}else{printf("数据库连接失败");}}

注意几个问题:

libmysql.lib。必须加进工程。

mysql.h,必须包含进来。这些都可以在网上下载。

libmySQL.dll,放到system32里面

注意,mysql服务器必须有一个用户可以远程访问,默认的root是不许远程访问的。所以必须进行添加一个用户。

sql命令如下:grant ALL PRIVILEGES ON *.* to root@"%" identified by "mysql"(注意空格之类的必须注意)。

然后,可以连接成功。

原创粉丝点击