mysql 5中的store function

mysql 5中新增了視圖,預存程序,觸發器等新功能,其中不少資料對其都有介紹,今天看到了其中的一個叫store function的功能,和預存程序有點象,但返回的是值哦,用法挺靈活的,故介紹之mysql> DELIMITER ||mysql>CREATE FUNCTION WEIGHTED_AVERAGE (n1 INT, n2 INT, n3 INT, n4 INT)RETURNS INTDETERMINISTICBEGINDECLARE avg INT;SET avg =

)硬體級MYSQL資料調優

http://www.hellodb.net/2011/07/mysql-linux-hardware-tuning.html最近一段時間,我們整理了一些關於Percona,Linux,Flashcache,硬體裝置的最佳化經驗,分享給大家:硬體1.開啟BBWCRAID卡都有寫cache(Battery Backed Write

mysql補遺3

小結許可權的相關操作1 建立帳號  grant all privileges on *.* to z1@localhost;       *.*表示對本地所有資料庫及表都有許可權,可以改為on test.user ,則對test資料庫的user表有許可權。  限制IP及加上密碼  grant select,insert,update..... on test1.* to 'z1'@'localhost' identified by '密碼'也可以用 on test.* to

mysql補遺4

這次繼續mysql的索引問題,這裡還是有不少原則可以總結一下的,大致歸納了如下面的1 對於複合式索引,如果查詢條件中有最左邊的一個,一般都會用到,  比如有索引(a,b),在SQL語句中如果有select * from table where a='.....',則這個索引一般用到,是最左匹配原則,但如果是按where

mysql innodb 引擎內幕讀書筆記2

1 關於全表掃描   如果要找的記錄有高選擇性,可以用索引;但如果找出來的資料量佔總記錄很大,比如超過20%,則最佳化器不會使用索引了,而是全表掃描。2 順序讀:是指根據索引的葉結點就能順序地讀取所需要的資料,只是邏輯上的,在物理磁碟上可能是隨機讀,但物理上的資料還是比較有順序的。隨機讀:指訪問輔助索引葉點不能完全得到結果,需要根據輔助索引葉結點中的主鍵去找實際行資料。3

mysql中query cache的局限性

最近在幫人調優MYSQL時,感覺mysql的query cache其實並不是越大越好的,因為其實當資料表有如下變化時,CACHE實際時失效的:包括: INSERT, UPDATE, DELETE, TRUNCATE, ALTER TABLE, DROP TABLE, or DROP DATABASE等所以如果表是頻繁讀的話,那對query cache調整下還可以,否則還是沒怎麼作用的.附調整參數:Query Cache相關參數:query_cache_size QC佔用空間大小,通過將其設定為0

mysql5中用事務的模式

在mysql 5中,開始支援事務了,在使用中要搭配mysqli來進行,有一定的模式,現小結如下<?// Instantiate the mysql class   $mysqldb = new mysqli("localhost","root","xxx","xxx");   // Start by assuming the transaction operations will all succeed   $success = TRUE;   // Disable the

mysql 5中的mysqli新支援的preparestament

mysql5 中的mysqli的確值得仔細去用和學習一下,今天看了看其中的一些新特性,比如新增加了支援preparestament的支援,舉例子如下(摘自apress的書)<?php// Create a new server connection$mysqli = new mysqli("127.0.0.1", "siteuser", "secret", "company");// Create the query and corresponding

mysql 4,mysql 4.1,mysql 資料庫中文問題

mysql 4的資料庫,如果要遷移到MYSQL 4.1去,是會有中文編碼問題的,有關的文章介紹太多了,GOOGLE一下就很多,關鍵是mysql 4.1開始支援多編碼了。今天嘗試一下遷移和插入讀取等問題,發現一些規律和問題,總結如下     我機器是win2000 server,裝了mysql 4,mysql 4.1 和mysql 5,用的是phpmyadmin 2.70 pl2.首先,我用phpmyadmin 將mysql 4的一個表匯出另存新檔abc.sql檔案了。之後,我先恢複到mysql

mysql innodb恢復長的問題

mysql innodb中,還是存在當恢複recovery故障後,時間很長的問題,查了下,原來原因如下:當故障發生,重新啟服務後,會自動完成恢複操作,將資料庫恢複到之前一個正常狀態。恢複進程會完成兩步,第一步:檢查redo日誌,將之前完成並提交的事務全部重做;第二步:將undo日誌中,未完成提交的事務,全部取消。那麼,就僅僅做了這麼兩步為什麼恢複過程會變得如此漫長呢?在InnoDB未對恢複速度做提升之前,MySQL的bug列表中,曾被提出了兩個改進請求:Bug #29847和Bug #49535

) mysql 的一些最佳化問題

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

mysql中的開啟的檔案描述符限制

Can't open file: '.\test\mytable.frm' (errno: 24)shell> perror 24OS error code 24: Too many open files 這樣的錯誤的話,應該是mysql的檔案描述符不夠了,解決的方法為,增加操作系統的描述符號:設定OS參數(如果你有許可權的話):在檔案/etc/security/limits.conf新增如下行:mysql soft nofile 65535mysql hard nofile 65535

mysql4,mysql4.1,mysql 5共存

由於工作需要,要按這三個玩意。因為舊系統用MYSQL 4,而MYSQL 4.1多了比如外鍵功能,MYSQL5 更是多了預存程序等東西,因此嘗試共存在一機器上。其實很簡單,mysql 4.1和MYSQL 5的安裝包已經非常自動化了,但要注意設定好不同的連接埠。比如mysql 4偶用的是3306,而MYSQL 4。1我用3308,MYSQL5偶用3309,安裝時,都選擇都安裝成為WINDOWS的服務。   

)MySQL InnoDB儲存引擎的一些參數

http://www.ningoo.net/html/2008/mysql_innodb_parametes.html#more-322InnoDB做為MySQL目前最廣泛的事務儲存引擎,很多地方的設計和Oracle都是共通的。對於Oracle DBA來說,學習的時候可以多和Oracle的一些特性進行類比,當然也要明白二者之間的區別。innodb_additional_mem_pool_size用於緩衝InnoDB資料字典及其他內部結構的記憶體池大小,類似於Oracle的library

)mysql isam的插入效率比innodb的要高

今天看到concurrent_insert這個參數,解釋一下:    MyISAM儲存引擎有一個系統變數concurrent_insert,專門用以控制其並發插入的行為,其值分別可以為0、1或2。    當 concurrent_insert設定為0時,不允許並發插入。   

)mysql的nproc

前幾天, 在管理系統的時候遇到一個奇怪的問題, 今天才有機會安裝好MySQL環境來重現此問題,由於不是最原始的環境, 所以未必能夠完全重現, 我只能努力重現關鍵問題了.. 我覺得此問題有點特別, 故在此大概的回想下當時的情景..工作時, 執行了一個su – mysql 的命令, 遇到了下面這樣一個錯誤..view sourceprint?1 [root@dbmain ~]# su - mysql  2 su: cannot set user id: Resource temporarily

)MySQL之Handler_read_*

在MySQL裡,我們一般使用SHOW STATUS查詢服務器狀態,文法一般來說如下:SHOW [GLOBAL | SESSION] STATUS [LIKE 'pattern' | WHERE expr]執行命令後會看到很多內容,其中有一部分是Handler_read_*,它們顯示了資料庫處理SELECT查詢語句的狀態,對於調試SQL語句有很大意義,可惜實際很多人並不理解它們的實際意義,本文簡單介紹一下:為了讓介紹更易懂,先建立一個測試用的表:CREATE TABLE IF NOT

)mysql的優先順序鎖

http://publish.itpub.net/a2011/0304/1162/000001162908.shtml通過鎖機制,可以實現多線程同時對某個表進行操作。如所示,在某個時刻,使用者甲、使用者乙、使用者丙可能會同時或者先後(前面一個作業還沒有完成)對資料表A進行查詢或者更新的操作。當某個線程涉及到更新操作時,就需要獲得獨佔的訪問權。在更新的過程中,所有其它想要訪問這個表的線程必須要等到其更新完成為止。此時就會導致鎖競爭的問題。從而導致使用者等待時間的延長。在這篇文章中,筆者將跟大家討論

mysql 補遺1

   最近小結歸納了些MYSQL中容易忽視和的操作,有的還是很不錯的.1) perror代碼查看工具     最近發現經常在MYSQL匯入匯出的時候,經常發現mysql中有error no:之類的錯誤提示資訊,但要具體知道錯在哪裡的話,其實MYSQL有個內建的工具perror的,比如可以這樣用   perror 30就可以看到代碼30的是什麼錯誤資訊了.2)mysqlcheck工具   參數有 -c(檢查) ,-r(修複) -a(分析)  -O(最佳化)如mysqlcheck -u root -

mysql補遺2

1 對備份的注意點    mysql 5中,要備份的話,當然要先設定日誌了,在my.ini中設定如下   [mysqld]# The TCP/IP Port the MySQL Server will listen onport=3306log-bin="E:/mysql5/log/bin.log"log-error="E:/mysql5/log/error.log"log="E:/mysql5/log/mysql.log"     備份時,用mysqldump,比如mysqldump -u

總頁數: 2483 1 .... 437 438 439 440 441 .... 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.