linux下c程式訪問mysql小例子

2021-07-31 17:03:51 字數 2349 閱讀 7028

1、c程式訪問mysql**

#include 

#include 

#include 

#define db_server "192.168.10.33"

#define db_name "ddource"

#define db_user "oldboy"

#define db_pwd  "oldboy123"

static mysql *db_handel,mysql;  

static mysql_row row;  

static

int query_error;  

mysql_res *query_test(char *sql);  

int query_show(mysql_res *result);  

int main(int argc,char *argv)  

//查詢記錄

mysql_res *query_test(char *sql)  

query_error=mysql_query(db_handel,"set names utf8");//查詢

query_error=mysql_query(db_handel,sql);//查詢

if(query_error!=0)//錯誤處理

query_result=mysql_store_result(db_handel);//獲取記錄

mysql_close(db_handel);//關閉資料庫

return query_result;//返回記錄

}  //顯示記錄

int query_show(mysql_res *result)  

printf("\n");  

}  return 0;  

}2、編譯

[root@test oldboy]# gcc -o select select.c -lmysqlclient -i/usr/local/webserver/mysql/include/mysql/ -l/usr/local/webserver/mysql/lib/mysql/  

3、執行

[root@test oldboy]# ./select   

./select: error while loading shared libraries: libmysqlclient.so.15: cannot open shared object file: no such file or directory  

[root@test oldboy]# find / -name libmysqlclient.so.15  

/usr/local/webserver/mysql/lib/mysql/libmysqlclient.so.15  

報錯了...。  

4、問題原因:

出現上面的錯誤是因為系統執行的時候沒有找到程式執行所需要的libmysqlclient.so.15執行庫檔案,解決方法有兩個:  

方法一:直接把libmysqlclient.so.15這個檔案拷貝到系統指定的/usr/lib庫檔案目錄中。  

方法二:設定/etc/ld.so.conf檔案,編輯該檔案,在檔案中加入libmysqlclient.so.15所在目錄,儲存退出。需要注意的是,每次改動ld.so.conf之後需要執行ldconfig來確認重新整理。  

方法三:add /usr/local/mysql/lib/mysql to you ld_library_path environment variable  

5、最終解決辦法:

如果出上面的提示可以通過下面的方法解決:  

[root@test oldboy]# vi /etc/ld.so.conf  

include ld.so.conf.d/*.conf  

/usr/ofed/lib  

/usr/local/webserver/mysql/lib  

/usr/local/webserver/mysql/lib/mysql  

#----------------------

執行ldconfig 生效  

6、ldconfig使用方法:

ldconfig [options] [libs]  

ldconfig的兩個選項  

-p:僅列印出檔案/etc/ld.so.cache的內容,此檔案是ld.so所知道的共享庫的當前列表  

本文出自 「老男孩linux培訓」 部落格,請務必保留此出處

linux下允許外部ip訪問你到mysql資料庫

linux下允許外部ip訪問你到mysql資料庫 1 設定mysql 的配置檔案 etc mysql my.cnf 找到 bind address 127.0.0.1 將其注釋掉 作用是使得不再只允許本地訪問 重啟mysql etc init.d mysql restart www.2cto.com...

linux通過c語言程式設計訪問遠端mysql

cpp view plain copy include include include mysql mysql.h intmain void else char sql select host,user from user order by rand if mysql query mysql,sql...

Linux下利用Docker搭建MYSQL5 7

1 建立mysql配置目錄 建立配置目錄 mkdir p etc mysql conf.d 建立資料和日誌目錄 mkdir pv opt mysql 2 修改my.cnf配置 輸入 sudo vim etc mysql conf.d my.cnf,新增如下內容 mysqld default stor...