五種MySQL資料庫可靠性方案的分析和比較

這篇文章主要從基本情況、成本、優缺點和應用場合等方面對5種MySQL的可靠性方案進行了詳細的分析和比較,另外,本文對MySQL資料庫的開發和管理有一定的借鑒作用。詳細內容請大家參考下文:1、MySQL Clustering(ndb-cluster

詳解MySQL分組查詢Group By實現原理

由於GROUP BY 實際上也同樣會進行排序操作,而且與ORDER BY 相比,GROUP BY 主要只是多了排序之後的分組操作。當然,如果在分組的時候還使用了其他的一些彙總函式,那麼還需要一些彙總函式的計算。所以,在GROUP BY 的實現過程中,與 ORDER BY 一樣也可以利用到索引。在MySQL 中,GROUP BY 的實現同樣有多種(三種)方式,其中有兩種方式會利用現有的索引資訊來完成 GROUP

MySQL的使用者佈建與授權

你可以有2個不同的方法增加使用者:通過使用GRANT語句或通過直接操作MySQL授權表。比較好的方法是使用GRANT語句,因為他們是更簡明並且好像錯誤少些。使用SHOW GRANTS語句顯示使用者的授權你可以直接查看授權表,也可以使用SHOW GRANTS語句查看某個使用者的授權,這種情況下使用SHOW GRANTS語句顯然要方便一些。文法:SHOW GRANTS FOR

MySQL與分頁

如果和MSSQL的TOP文法相比,那麼MySQL的LIMIT文法要顯得優雅了許多。使用它來分頁是再自然不過的事情了。最基本的分頁方式:SELECT ... FROM ... WHERE ... ORDER BY ... LIMIT ...在中小資料量的情況下,這樣的SQL足夠用了,唯一需要注意的問題就是確保使用了索引:舉例來說,如果實際SQL類似下面語句,那麼在category_id, id兩列上建立複合索引比較好:SELECT * FROM articles WHERE

解決MySQL server has gone away

今天遇到類似的情景,MySQL只是冷冷的說:MySQL server has gone

Freebsd下Mysql不支援GBK及解決方案

用packages安裝的mysql 5.1,不支援GBK編碼,只支援UTF8編碼。具體表現:在開啟一個用GBK編碼的資料庫時,提示ERROR 1273 (HY000): Unknown collation 'gbk_chinese_ci' in table 'data_plus' definitionset names gbk; 和 SET character_set_client = gbk;提示:ERROR 1115 (42000): Unknown character set: 'gbk'

在MySQL中使用更新記錄檔

你不可能隨時備份資料,但你的資料丟失時,或者資料庫目錄中的檔案損壞時, 你只能恢複已經備份的檔案,而在這之後的插入或更新的資料,就無能為力了。解決這個問題,就必須使用更新日誌。更新日誌可以即時記錄更新、插入和刪除記錄的SQL語句。啟用日誌當以--log-update=file_name選項啟動時,mysqld將所有更新資料的SQL命令寫入記錄檔案中。檔案被寫入資料目錄並且有一個名字file_name.#,這裡#是一個數字,它在每次執行mysqladmin refresh或mysqladmin

MySQL中字串函數詳解

字串或串(String)是由零個或多個字元組成的有限序列。一般記為

MySQL資料庫記錄檔維護的方法

由於記錄檔是恢複資料庫資料的重要參考,因此記錄檔的維護也有十分重要的意義。當MySQL與記錄檔一起使用時,你有時想要刪除/備份舊的記錄檔並且告訴MySQL在新檔案中開始記錄。本文涉及如何啟用新的記錄檔,包括更新日誌和常規日誌。這裡所述的方法,同樣也適用二進位日誌。如何使用新的更新日誌如果你只使用一個更新日誌,你只須清空記錄檔,然後移走舊的更新記錄檔到一個備份中,然後啟用新的更新日誌。用下列方法可以強制服務器啟用新的更新日誌:◆mysqladmin

MySQL Order By文法

MySQL Order By keyword是用來給記錄中的資料進行分類的。MySQL Order By Keyword根據關鍵詞分類ORDER BY keyword是用來給記錄中的資料進行分類的。MySQL Order By文法SELECT column_name(s)FROM table_nameORDER BY column_name注意:SQL語句是“字母大小寫不敏感”的語句(它不區分字母的大小寫),即:“ORDER BY”和“

MySQL Order By Rand()效率

最近由於需要大概研究了一下MYSQL的隨機抽取實現方法。舉個例子,要從tablename表中隨機提取一條記錄,大家一般的寫法就是:SELECT * FROM tablename ORDER BY RAND() LIMIT 1。但是,後來我查了一下MYSQL的官方手冊,裡面針對RAND()的提示大概意思就是,在ORDER BY從句裡面不能使用RAND()函數,因為這樣會導致資料列被多次掃描。但是在MYSQL 3.23版本中,仍然可以通過ORDER BY

MySQL Group By用法

MySQL Group By用法我們現在回到函數上。記得我們用 SUM 這個指令來算出所有的 Sales (營業額)吧!如果我們的需求變成是要算出每一間店 (store_name) 的營業額 (sales),那怎麼辦呢?在這個情況下,我們要做到兩件事:第一,我們對於 store_name 及 Sales 這兩個欄位都要選出。第二,我們需要確認所有的 sales 都要依照各個 store_name 來分開算。這個文法為: SELECT "欄位1", SUM("欄位2&

用mysqldumpslow分析mysql的slow query log

mysql有一個功能就是可以log下來啟動並執行比較慢的sql語句,預設是沒有這個log的,為了開啟這個功能,要修改my.cnf或者在mysql啟動的時候加入一些參數。如果在my.cnf裡面修改,需增加如下幾行long_query_time = 1log-slow-queries = /var/youpath/slow.loglog-queries-not-using-indexeslong_query_time

淺析MySQL-5.1.x在RH5上安裝報錯的問題

客戶要求mysql-5.1.32是gbk的版本我從mysql.com下載了二進位源碼,不用編譯自己安裝就好了。後來查看到是latin1的語言~網上搜尋了半天,一篇有用的文章也沒有,都是在freebsd下如何重新安裝mysql-5.1.32,讓他支援gbk不得已。又搜尋了下找到了mysql5.1.32的源碼包,還是手動編譯自己心裡放心~從這裡下載http://dev.mysql.com/downloads/mysql/5.1.html

MySQL資料目錄結構

從概念上講,大多數關聯式資料庫系統是相似的:它們有一系列資料庫組成,每個資料庫包含一系列資料庫表,但每個系統有各自組織其管理的資料方式,MySQL也不例外。預設地,所有由MySQL伺服器mysqld管理的資料存放區在一個稱為MySQL資料目錄的地方,所有資料庫都存放在哪兒,也包括提供伺服器操作資訊的狀態檔案。如果你對一個MySQl安裝執行管理工作,你應該熟知資料目錄的布局及用途。本文介紹下列專題:如何確定資料目錄的位置。伺服器如何組織並提供對資料庫和它管理的表的訪問。在哪裡找到由伺服器產生的狀態

MySQL Order By索引最佳化

在一些情況下,MySQL可以直接使用索引來滿足一個 ORDER BY 或 GROUP BY 子句而無需做額外的排序。儘管 ORDER BY 不是和索引的順序準確匹配,索引還是可以被用到,只要不用的索引部分和所有的額外的 ORDER BY 欄位在 WHERE 子句中都被包括了。使用索引的MySQL Order By下列的幾個查詢都會使用索引來解決 ORDER BY 或 GROUP BY 部分:SELECT * FROM t1 ORDER BY key_part1,key_part2,...

最佳化MySQL資料庫效能的八大“妙手”

本文探討了提高MySQL

mysql中UNIX_TIMESTAMP()函數和php中time()函數的區別

mysql 中:UNIX_TIMESTAMP(), UNIX_TIMESTAMP(date)若無參數調用,則返回一個 Unix timestamp ('1970-01-01 00:00:00' GMT 之後的秒數) 作為不帶正負號的整數。若用date 來調用 UNIX_TIMESTAMP(),它會將參數值以'1970-01-01 00:00:00' GMT後的秒數的形式返回。date 可以是一個 DATE 字串、一個 DATETIME字串、一個 TIMESTAMP或一個當地時間的YYMMDD

MySQL Order By用法

先按照下面的表結構建立mysql_order_by_test資料表,我們用執行個體一點一點告訴你,MySQL order by的用法。ORDER BY uid ASC按照uid正序查詢資料,也就是按照uid從小到大排列ORDER BY uid DESC按照uid逆序查詢資料,也就是按照uid從大到小排列我們來看SELECT * FROM mysql_order_by_test ORDER BY uid ASC這條語句是按照uid正序查詢資料,也就是按照uid從小到大排列返回的結果就是:1 

解決MySQL 5資料庫連接逾時問題

最近碰到一個mysql5資料庫的問題。就是一個標準的servlet/tomcat網路應用,後台使用mysql資料庫。問題是待機一晚上後,第二天早上第一次登入總是失敗。察看日誌發現如下錯誤:“com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failureLast packet sent to the server was 0 ms

總頁數: 2483 1 .... 1165 1166 1167 1168 1169 .... 2483 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.