本文介绍mysql客户端环境配置与c语言连接验证流程:安装开发包后验证头文件及库文件,创建本地用户并授予权限;通过编写test.c程序,使用mysql_init、mysql_real_connect等函数连接mysql,执行select version()查询,输出版本信息。编译时使用mysql_config获取编译链接参数,最终实现c程序安全访问mysql数据库。
如何配置环境此处不讲
环境验证
链接mysql的c头文件验证
ls /usr/incluse/mysql/

相关动静态库验证
find /usr/lib -name "libmysqlclient*" 2>/dev/null

创建用户
普通用户并设置密码
create user '用户名'@'登陆主机/ip' identified by '密码';

限制仅本地登录(localhost)
验证创建是否成功

赋权
指明某库的权限赋予
grant 权限列表 on 库.对象名 to '用户名'@'登陆位置' [identified by '密码']


普通端验证权限赋予情况

登录
对端登录:

mysql链接验证test.c
#include<mysql/mysql.h>
#include <stdio.h>
#include <mysql/mysql.h>
int main(void)
{
mysql *conn;
mysql_res *res;
mysql_row row;
conn = mysql_init(null);
if (conn == null) {
fprintf(stderr, "mysql_init failed\n");
return 1;
}
if (mysql_real_connect(conn, "localhost", "root", "你的密码",
null, 0, null, 0) == null) {
fprintf(stderr, "connect failed: %s\n", mysql_error(conn));
mysql_close(conn);
return 1;
}
if (mysql_query(conn, "select version()") != 0) {
fprintf(stderr, "query failed: %s\n", mysql_error(conn));
mysql_close(conn);
return 1;
}
res = mysql_store_result(conn);
if (res == null) {
fprintf(stderr, "store_result failed: %s\n", mysql_error(conn));
mysql_close(conn);
return 1;
}
while ((row = mysql_fetch_row(res)) != null) {
printf("mysql version: %s\n", row[0]);
}
mysql_free_result(res);
mysql_close(conn);
return 0;
}编译
gcc test.c -o test $(mysql_config --cflags --libs)

到此这篇关于mysql为创建普通用户并创建库赋权的操作的文章就介绍到这了,更多相关mysql创建普通用户并创建库赋权内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
发表评论