首頁 資料庫 mysql教程 Linux应用集成MySQL数据库访问的技巧_MySQL

Linux应用集成MySQL数据库访问的技巧_MySQL

Jun 01, 2016 pm 01:54 PM
資料庫開發 資料庫存取

  本文描述了MySQL,一种利用第三方数据库开发电子贸易和其它复杂、动态网站的有效工具。MySQL 是一种快速、多线程和全功能的 SQL服务器。除了描述MySQL系统的基本体系结构以外,本文还提供了以Tcl和C++编写的简单示例,帮助您开发支持数据库的Web应用。

  一个必须存储或访问大量信息的应用程序可以从使用第三方数据库产品中受益匪浅。在对信息的访问必须在程序的多个实例上进行时更是如此。基于Web的应用(包括电子贸易)就是它的良好例证。

  为什么使用独立数据库?

  Web服务器必须使其处理脚本有办法来存储有关供其以后访问的状态信息。尽管有可能使用比较原始一些的方法--例如转储到文本文件或开发自制的迷你数据库--但只有成熟的数据库应用才能提供更为复杂的Web应用所需的所有服务。因为有一些免费获得的软件包可用于该目的,所以编写定制的特定于应用的数据库引擎并无太大好处。 另外,使用第三方数据库还使Web开发者不必投入到开发和维护数据库的任务中。

  MySQL数据库

  通过使用脚本语言和编译型系统语言(例如 C),将数据库集成到Linux应用就可能相当容易。可免费获得的MySQL(在GNU Public License下发行)数据库提供了一系列复杂的SQL功能,并易于集成到应用中。MySQL是快速、多线程的,并支持ANSI和ODBC SQL标准。加上第三方软件,MySQL就支持用于事务处理应用的事务安全的表。

  注:什么是事务处理?

  事务是需要以原子方式执行的对数据库所做的一系列更改。它们要么必须全部执行,要么一个都不执行。 例如,在Web上销售产品时所有必需的数据库更改组成一个事务。

  数据库需要同时减去客户帐户余额和产品库存,否则失败并且一个操作都不执行。

  支持事务处理的数据库可以将一组数据库代码封装在一个事务中,在事务执行期间的任何失败会让数据库回滚到事务开始之前的状态。

  这是通过维护所有数据库操作的日志,以及其原始状态表的副本来实现的,在失败后下一次重新启动服务器时允许回滚操作。 这种时间和空间上的开销是事务安全数据库系统所必需的一种折衷。

  单一MySQL服务器控制着一系列数据库,它们都可以通过服务器以类似方式来访问。 每个数据库实际上都是一组任意数量的表,概念与其它SQL数据库的用户类似。每个表都由带类型的数据列组成。 数据可以是整数、实数值、字符串或其它类型,包括原始二进制流。 表中的每一行都是存储在数据库中的一个记录。

  MySQL被设计和构造成客户机/服务器。 服务器mysqld可以在能从因特网访问到的任何机器上运行(最好与Web服务器在同一台或最接近的一台机器上,以确保合理的响应时间)。MySQL客户机使用请求来与MySQL服务器联系,修改或查询服务器所拥有的数据库。 在支持数据库的Web应用程序中,数据库客户机是Web服务器或由Web服务器产生的CGI脚本。 这些客户机可以用高级脚本语言或低级系统语言编写,只要存在这种语言的数据库API即可。在Linux中,大多数脚本语言是以C 实现的,因为存在MySQL C API,所以要将MySQL支持添加到任何现有的脚本语言或工具应该很容易。绝大部分脚本语言已经完成了这一步。

  MySQL API

  MySQL API可用于各种语言,包括几乎所有编写网站后端所实际使用的语言。 使用这些API,我们可以构建由Web服务器控制的 MySQL客户机。

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前 By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

C#開發中如何使用多執行緒並發存取資料庫 C#開發中如何使用多執行緒並發存取資料庫 Oct 09, 2023 pm 11:29 PM

C#開發中如何使用多執行緒並發存取資料庫

C#開發建議:優化資料庫存取與資料處理 C#開發建議:優化資料庫存取與資料處理 Nov 22, 2023 pm 12:12 PM

C#開發建議:優化資料庫存取與資料處理

PHP和SQL Server資料庫開發 PHP和SQL Server資料庫開發 Jun 20, 2023 pm 10:38 PM

PHP和SQL Server資料庫開發

高並發資料庫存取: Golang上的Go WaitGroup技術 高並發資料庫存取: Golang上的Go WaitGroup技術 Sep 27, 2023 pm 04:13 PM

高並發資料庫存取: Golang上的Go WaitGroup技術

如何使用Go語言實現物件導向的資料庫訪問 如何使用Go語言實現物件導向的資料庫訪問 Jul 25, 2023 pm 01:22 PM

如何使用Go語言實現物件導向的資料庫訪問

Golang中使用快取加速資料庫存取效率的實踐。 Golang中使用快取加速資料庫存取效率的實踐。 Jun 20, 2023 am 10:12 AM

Golang中使用快取加速資料庫存取效率的實踐。

如何使用PHP資料快取減少資料庫存取次數? 如何使用PHP資料快取減少資料庫存取次數? Aug 10, 2023 pm 01:10 PM

如何使用PHP資料快取減少資料庫存取次數?

Golang開發建議:如何撰寫高效能的資料庫存取程式碼 Golang開發建議:如何撰寫高效能的資料庫存取程式碼 Nov 23, 2023 am 10:44 AM

Golang開發建議:如何撰寫高效能的資料庫存取程式碼

See all articles