新聞中心
MySQL是一種流行的開源關系型數據庫管理系統(tǒng)。在Linux平臺上,利用MySQL進行數據庫管理和操作需要先學習MySQL的開發(fā)語言和API接口。在這個過程中,MySQL頭文件就顯得尤為重要。MySQL頭文件包含了MySQL的各種庫和函數的聲明和定義,使得開發(fā)者可以利用這些庫和函數輕松地訪問數據庫。

目前創(chuàng)新互聯公司已為1000多家的企業(yè)提供了網站建設、域名、網站空間、網站托管、企業(yè)網站設計、清豐網站維護等服務,公司將堅持客戶導向、應用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
MySQL頭文件的目錄結構
MySQL頭文件主要位于MySQL安裝目錄下的include目錄中,包括:
– mysql.h: 這個頭文件包含了所有MySQL API的定義和聲明,包括MySQL連接、查詢、數據類型等所有基本操作。
– mysql_time.h: 這個頭文件主要定義了MySQL中日期時間相關的操作。
– mysql_version.h: 這個頭文件用于獲取MySQL版本信息。
– my_global.h: 這個頭文件被廣泛調用,包括了大量公共結構和函數定義,是開發(fā)MySQL應用時的基礎。
– my_sys.h: 這個頭文件包含了MySQL內部的系統(tǒng)函數,對于MySQL的擴展以及對內部函數的操作都有很大幫助。
– sql_common.h: 這個頭文件主要包括SQL的一些基礎定義和基本操作定義。
MySQL頭文件的使用
在Linux系統(tǒng)上,要使用MySQL頭文件,需先在c或c++代碼中包含這些頭文件。例如:
#include
#include
這些頭文件都是以C語言編寫的,所以在使用時應該使用C編譯器來編譯程序。
MySQL頭文件的相關函數
MySQL頭文件中包含了大量的函數,這里只介紹一部分常用函數。
1. mysql_init
作用:初始化一個MYSQL結構體。
定義:MYSQL *mysql_init(MYSQL *mysql);
參數:mysql:MYSQL結構指針。
使用例子:
MYSQL mysql;
mysql_init(&mysql);
2. mysql_real_connect
作用:連接MySQL服務器。
定義:MYSQL *mysql_real_connect(MYSQL *mysql, const char *host, const char *user,
const char *passwd, const char *db, unsigned int port, const char *unix_socket,
unsigned long client_flag);
參數:
mysql:通過mysql_init()初始化的MYSQL結構指針。
host:MySQL連接的主機名或IP地址。
user:MySQL連接的用戶名。
passwd:MySQL連接的密碼。
db:要連接的MySQL數據庫名。
port:MySQL服務器端口號。
unix_socket:連接MySQL服務器的Unix套接字。當指定了該參數后,host、port將被忽略。
client_flag:連接MySQL服務器時可以指定各種啟動參數。
返回值:連接成功返回MYSQL結構指針,失敗返回NULL。
使用例子:
MYSQL mysql;
mysql_init(&mysql);
mysql_real_connect(&mysql, “l(fā)ocalhost”, “root”, “password”, “testdb”, 0, NULL, 0);
3. mysql_query
作用:執(zhí)行SQL查詢語句。
定義:int mysql_query(MYSQL *mysql, const char *stmt_str);
參數:
mysql:通過mysql_init()初始化的MYSQL結構指針。
stmt_str:SQL語句。
返回值:執(zhí)行成功返回0, 失敗返回非0值。
使用例子:
MYSQL mysql;
mysql_init(&mysql);
mysql_real_connect(&mysql, “l(fā)ocalhost”, “root”, “password”, “testdb”, 0, NULL, 0);
mysql_query(&mysql, “SELECT * FROM testtable”);
相關問題拓展閱讀:
- 怎么在linux上安裝mysql
怎么在linux上安裝mysql
linux下使用yum安裝mysql
1. 安裝mysql 服務器端:
yum install mysql-server
yum install mysql-devel
2. 安裝mysql客戶端:
yum install mysql
3. 啟動mysql服務:
service mysqld start或純肆者/etc/init.d/mysqld start
停止:
service mysqld stop
重啟:
service mysqld restart
4. 創(chuàng)做帶轎建root管理員:
mysqladmin -u root password
5.登陸行手
mysql -uroot -p123456
1.運行平臺:CentOS 6.3 x86_64,基本等同于RHEL 6.3
2.安裝方法:
安裝MySQL主要有兩種方法:一種是通過源碼自行編譯安裝,這種適合高級用戶定制MySQL的特性,這里不做說明;另一種是通過編譯過的二進制文件進行安裝。二進制文件安裝的方法又分為兩種:一種是不針對特定平臺的通用安裝方法,使用的二進制槐租文件是后綴為.tar.gz的壓縮文件;第二種是使用RPM或其他包進行安裝,這種安裝進程會自動完成系統(tǒng)的相關配置,所以比較方便。
3.下載安裝包:
a. 官芹陪方下載地址:
或鏡像文件下載:
2. 下載文件(根據操作系統(tǒng)選擇相應的發(fā)布版本):
a. 通用安裝方法
mysql-5.5.29-linux2.6-x86_64.tar.gz
b.RPM安裝方法:
MySQL-server-5.5.29-2.el6.x86_64.rpm
MySQL-client-5.5.29-2.el6.x86_64.rpm
4.通用安裝步驟
a.檢查是否已安裝,grep的-i選項表示匹配時忽略大小寫
#rpm -qa|grep -i mysql
mysql-libs-5.1.61-4.el6.x86_64
*可見已經安裝了庫文件,應該先卸載,不然會出現覆蓋錯誤。注意卸:載時使用了–nodeps選項,忽略了依賴關系:
#rpm -e mysql-libs-5.1.61-4.el6.x86_64 –nodeps
b. 添加mysql組和mysql用戶,用于設置mysql安裝目錄文件所有者和所屬組。
#groupadd mysql
#useradd -r -g mysql mysql
*useradd -r參數表示mysql用戶是系統(tǒng)用戶,不可用于登錄系統(tǒng)。
c. 將二進制文件解壓到指定的安裝目錄,我們這里指定為/usr/local
# cd/usr/local/
#tar zxvf /path/to/mysql-5.5.29-linux2.6-x86_64.tar.gz
*加壓后在/usr/local/生成了解壓后的文件夾mysql-5.5.29-linux2.6-x86_64,這名字太長,我們?yōu)樗⒁粋€符號鏈接mysql,方便鉛首兆輸入。
#ln -s mysql-5.5.29-linux2.6-x86_64 mysql
d. /usr/local/mysql/下的目錄結構
Directory
Contents of Directory
bin
Client programs and the mysqld server
data
Log files, databases
docs
Manual in Info format
man
Unix manual pages
include
Include (header) files
lib
Libraries
scripts
mysql_install_db
share
Miscellaneous support files, including error messages, sample configuration files, SQL for database installation
sql-bench
Benchmarks
e. 進入mysql文件夾,也就是mysql所在的目錄,并更改所屬的組和用戶。
#cd mysql
#chown -R mysql .
#chgrp -R mysql .
f.執(zhí)行mysql_install_db腳本,對mysql中的data目錄進行初始化并創(chuàng)建一些系統(tǒng)表格。注意mysql服務進程mysqld運行時會訪問data目錄,所以必須由啟動mysqld進程的用戶(就是我們之前設置的mysql用戶)執(zhí)行這個腳本,或者用root執(zhí)行,但是加上參數–user=mysql。
scripts/mysql_install_db –user=mysql
*如果mysql的安裝目錄(解壓目錄)不是/usr/local/mysql,那么還必須指定目錄參數,如
scripts/mysql_install_db –user=mysql \
–basedir=/opt/mysql/mysql \
–datadir=/opt/mysql/mysql/data
*將mysql/目錄下除了data/目錄的所有文件,改回root用戶所有,mysql用戶只需作為mysql/data/目錄下所有文件的所有者。
chown -R root .
chown -R mysql data
g. 復制配置文件
cp support-files/my-medium.cnf /etc/my.cnf
h. 將mysqld服務加入開機自啟動項。
*首先需要將scripts/mysql.server服務腳本復制到/etc/init.d/,并重命名為mysqld。
cp support-files/mysql.server /etc/init.d/mysqld
*通過chkconfig命令將mysqld服務加入到自啟動服務項中。
#chkconfig –add mysqld
*注意服務名稱mysqld就是我們將mysql.server復制到/etc/init.d/時重命名的名稱。
*查看是否添加成功
#chkconfig –list mysqld
mysqld 0:off 1:off:on:on:on:on:off
i. 重啟系統(tǒng),mysqld就會自動啟動了。
*檢查是否啟動
#netstat -anp|grep mysqld
tcp0 0.0.0.0: 0.0.0.0:* LISTEN/mysqld
unix STREAM LISTENING5/mysqld/tmp/mysql.sock
*如果不想重新啟動,那可以直接手動啟動。
#service mysqld start
Starting MySQL.. SUCCESS!
j.運行客戶端程序mysql,在mysql/bin目錄中,測試能否連接到mysqld。
#/usr/local/mysql/bin/mysql
Welcome to the MySQLmonitor. Commands end with ; or \g.
Your MySQL connection idis 2
Server version:5.5.29-log MySQL Community Server (GPL)
Copyright (c) 2023, 2023,Oracle and/or its affiliates. All rights reserved.
Oracle is a registeredtrademark of Oracle Corporation and/or its affiliates. Other names may betrademarks of their respective owners.
Type ‘help;’ or ‘\h’ forhelp. Type ‘\c’ to clear the current input statement.
mysql> quit
Bye
*此時會出現mysql>命令提示符,可以輸入sql語句,輸入quit或exit退出。為了避免每次都輸入mysql的全路徑/usr/local/mysql/bin/mysql,可將其加入環(huán)境變量中,在/etc/profile最后加入兩行命令:
MYSQL_HOME=/usr/local/mysql
export PATH=$PATH:$MYSQL_HOME/bin
這樣就可以在shell中直接輸入mysql命令來啟動客戶端程序了
#mysql
Welcome to the MySQLmonitor. Commands end with ; or \g.
Your MySQL connection idis 3
Server version:5.5.29-log MySQL Community Server (GPL)
Copyright (c) 2023, 2023,Oracle and/or its affiliates. All rights reserved.
Oracle is a registeredtrademark of Oracle Corporation and/or its
affiliates. Other nameay be trademarks of their respective
owners.
Type ‘help;’ or ‘\h’ forhelp. Type ‘\c’ to clear the current input statement.
mysql>
5.RPM安裝步驟
a.檢查是否已安裝,grep的-i選項表示匹配時忽略大小寫
#rpm -qa|grep -i mysql
mysql-libs-5.1.61-4.el6.x86_64
可見已經安裝了庫文件,應該先卸載,不然會出現覆蓋錯誤。注意卸載時使用了–nodeps選項,忽略了依賴關系:
#rpm -e mysql-libs-5.1.61-4.el6.x86_64 –nodeps
2. 安裝MySQL的服務器端軟件,注意切換到root用戶:
#rpm -ivh MySQL-server-5.5.29-2.el6.x86_64.rpm
安裝完成后,安裝進程會在Linux中添加一個mysql組,以及屬于mysql組的用戶mysql??赏ㄟ^id命令查看:
#id mysql
uid=496(mysql)gid=493(mysql) groups=493(mysql)
MySQL服務器安裝之后雖然配置了相關文件,但并沒有自動啟動mysqld服務,需自行啟動:
#service mysql start
Starting MySQL.. SUCCESS!
可通過檢查端口是否開啟來查看MySQL是否正常啟動:
#netstat -anp|grep 3306
tcp0 0.0.0.0: 0.0.0.0:* LISTEN/mysqld
c. 安裝MySQL的客戶端軟件:
#rpm -ivh MySQL-client-5.5.29-2.el6.x86_64.rpm
如果安裝成功應該可以運行mysql命令,注意必須是mysqld服務以及開啟:
#mysql
Welcome to the MySQLmonitor. Commands end with ; or \g.
Your MySQL connection idis 1
Server version: 5.5.29MySQL Community Server (GPL)
Copyright (c) 2023, 2023,Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademarkof Oracle Corporation and/or its affiliates. Other names may be trademarks oftheir respective owners.
Type ‘help;’ or ‘\h’ forhelp. Type ‘\c’ to clear the current input statement.
mysql>
d. RPM安裝方式文件分布
Directory
Contents of Directory
/usr/bin
Client programs and scripts
/usr/in
The mysqld server
/var/lib/mysql
Log files, databases
/usr/share/info
Manual in Info format
/usr/share/man
Unix manual pages
/usr/include/mysql
Include (header) files
/usr/lib/mysql
Libraries
/usr/share/mysql
Miscellaneous support files, including error messages, character set files, sample configuration files, SQL for database installation
/usr/share/sql-bench
Benchmarks
關于mysql在linux中的頭文件的介紹到此就結束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關注本站。
成都服務器托管選創(chuàng)新互聯,先上架開通再付費。
創(chuàng)新互聯(www.cdcxhl.com)專業(yè)-網站建設,軟件開發(fā)老牌服務商!微信小程序開發(fā),APP開發(fā),網站制作,網站營銷推廣服務眾多企業(yè)。電話:028-86922220
分享標題:Linux中的MySQL頭文件詳解 (mysql在linux中的頭文件)
分享鏈接:http://fisionsoft.com.cn/article/dhjsjoj.html


咨詢
建站咨詢
