封装mysql读写分离SDK遇到的一些问题

一、如何编译?

进到cmake目录 source 对应平台的abenv脚本 再到对应的目录用makec编译。

二、创建uuid

命令

uuidgen

三、创建对外暴露的实体

nsresult  rv;

nsCOMPtr<ncIDBSql> dbconn = do_CreateInstance(宏定义, &rv);

 

复制代码
int main()
{
    static AppContext appCtx (AB_APPLICATION_NAME);
    AppContext::setInstance (&appCtx);
    AppSettings* appSettings = AppSettings::getCFLAppSettings ();
    LibManager::getInstance ()->initLibs (appSettings, &appCtx, 0);
    ::ncInitXPCOM ();
    usepool();
    return 0;
}
复制代码

 

四、Can‘t connect to local MySQL server through socket '/tmp/mysql.sock'

是因为找不到mysql.sock,安装mysql时,默认的mysql.sock路径在/var/lib/mysql/mysql.sock中,可在/etc/my.cnf中查看。

解决办法:将之前的sock路径注释,添加一下字段

[mysqld]
socket = /tmp/mysql.sock
[client]
socket = /tmp/mysql.sock
[mysqld]
socket = /tmp/mysql.sock

没有的[client]的话,自行添加。

然后重启mysql服务

systemctl restart mysqld  //重启服务
systemctl status mysqld   //查看状态

重启成功后就可以连接了。

五、出现MySql Connect error! Segmentation fault (core dumped)

解决办法: 将host从“localhost”更改为“127.0.0.1”

六、Mysql 连接句柄指针,传入数据库连接函数,返回的指针仍为空

解决办法:定义这个句柄的二级指针传入数据库连接函数,就可以修改句柄指针。

 七、指针如果不分配空间就将其置为NULL。

八、String格式字符串不能直接cout输出,用string强制转换一下

string(String);
//或者
string(String).c_str();

 

posted @   放弃吧  阅读(66)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示