說明mysql資料庫支援主從資料庫叢集、主從Database Backup以及主主相互備份。下面主要說一下主主同步備份。所謂主主同步是指兩個或以上資料庫間時時同步資料,主要作用一個是備份,再一個就是分攤使用者並行訪問量。配置假設有兩個資料庫伺服器192.168.0.1和192.168.0.2,後面用1表示168.0.1,2表示168.0.2首先配置1用root進入mysql添加一個授權2可以訪問的使用者代碼:mysql>GRANT all privileges ON *.* TO
1 mysql為單進程多線程的架構2 查看當前資料庫支援的引擎 show engines\G;3 innodb的後台線程有7個,4個IO THREAD,1個MASTER THREAD,1個鎖,1個錯誤監控線程。 show engine innodb status\G;4 innodb 的記憶體組成:緩衝池,重做日誌緩衝池,額外的記憶體池 show variables like 'innodb_buffer_pool_size'\G;(緩衝池) show variables
小結許可權的相關操作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的索引問題,這裡還是有不少原則可以總結一下的,大致歸納了如下面的1 對於複合式索引,如果查詢條件中有最左邊的一個,一般都會用到, 比如有索引(a,b),在SQL語句中如果有select * from table where a='.....',則這個索引一般用到,是最左匹配原則,但如果是按where
最近在幫人調優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
在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
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 innodb中,還是存在當恢複recovery故障後,時間很長的問題,查了下,原來原因如下:當故障發生,重新啟服務後,會自動完成恢複操作,將資料庫恢複到之前一個正常狀態。恢複進程會完成兩步,第一步:檢查redo日誌,將之前完成並提交的事務全部重做;第二步:將undo日誌中,未完成提交的事務,全部取消。那麼,就僅僅做了這麼兩步為什麼恢複過程會變得如此漫長呢?在InnoDB未對恢複速度做提升之前,MySQL的bug列表中,曾被提出了兩個改進請求:Bug #29847和Bug #49535