標籤: mysql的介紹以及編譯安裝mariadb
一:mysql的介紹:
mysql資料庫是工作於線程模式的。是一種關係型資料庫,有嚴格的資料模型結構,這樣在並發讀寫量大的時候,就不得不對其進行擴充,而這種方式擴充還是非常麻煩的。
由於讀操作是可以緩衝的,所以我們可以為mysql提供快取服務器。
程式讀取資料時先查快取服務器,再查mysql資料庫,這樣如果緩衝有訪問的內容,那麼就可以節省 訪問時間。
二:關係型資料管理系統 RDBMS
關聯式模式中主要組件:
資料方案:資料庫
表,視圖(虛表,基於某種關係用語句形成的),索引,
預存程序,儲存函數:都是由sql編程介面寫的sql程式碼片段進而讓使用者完成相關的操作
觸發器:當一個修改類的語句發生時,能夠觸發另外一個或者一組的語句發生 也是程式碼片段
遊標:有點類似於C語言中的指標
事務:同時執行或者同時不執行 滿足ACID測試
使用者:實現資源指派,資料訪問授權
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/47/7C/wKioL1P7IFLhy52gAACjUoTB_Zc339.jpg" title="1.jpg" alt="wKioL1P7IFLhy52gAACjUoTB_Zc339.jpg" />
連線管理員:接受使用者查詢語句
儲存引擎藉助於交易管理員和鎖管理器是對資料並發控制
儲存引擎可以作為外掛程式式的調換,決定資料庫是否支援交易管理都是有其設定的
復原管理員:資料發生崩潰時,將資料恢複到期初狀態
最佳化器:選擇最佳化後的路徑 交給儲存引擎
三:資料存放區機制
資料根據索引順序存放稱為索引順序存放
資料時按需隨機儲存稱為堆檔案
四:mysql的核心組件
串連池:認證、線程重用、串連數限制、記憶體檢查、緩衝;
SQL介面:DDL,DML,關係型資料庫的基本抽象
parser:查詢轉換、對象許可權檢查;
最佳化器:訪問路徑,效能相關的統計資料
caches和buffers:與儲存引擎自身相關的I/O效能提升工具
儲存引擎:執行SQL語句中的操作,有MyISAM,InnoDB、Memory、Merge等
具體組件以及流程:
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M00/47/7B/wKiom1P7H7uwrK49AAM-APCYzfc435.jpg" title="2.jpg" alt="wKiom1P7H7uwrK49AAM-APCYzfc435.jpg" />
Mysql的資料檔案:
檔案和日誌:
檔案:資料檔案和索引檔案
日誌:交易記錄、二進位日誌、查詢日誌、慢查詢日誌、錯誤記錄檔、中繼日誌;其中交易記錄、二進位日誌不可缺少
查看MySQL的伺服器變數或狀態變數:
MariaDB的各種工作屬性是通過其伺服器變數來定義的:
SHOW {GLOBAL|SESSION} VARIALES [LIKE ‘‘];
MariaDB運行時的諸多統計資料會被記錄在狀態變數;
SHOW {GLOBAL|SESSION} STATUS [LIKE ‘‘];
五:安裝方式:
rpm包安裝,二進位通用格式,源碼編譯安裝,本次介紹源碼安裝
1.安裝cmake (跨平台編譯器)
cmake的重要特性之一是其獨立於源碼(out-of-source)的編譯功能,即編譯工作可以在另一個指定的目錄中而非源碼目錄中進行,
這可以保證源碼目錄不受任何一次編譯的影響,因此在同一個源碼樹上可以進行多次不同的編譯,如針對於不同平台編譯。
2.為mariadb 提系統使用者
groupadd -r mysql
usradd -g mysql -d /mydata/data -r mysql
建立 /mydata/data目錄為資料庫資料目錄
mkidr -pv /mydata/data
更改資料庫資料目錄的屬主屬組為mysql
chmod mysql:mysql /mydata/data
3.執行cmake . -DWITH_SPHINX_STORAGE_ENGINE=1 -DWITH_SSL=system -DMYSQL_DATADIR=/mydata/data
如果出現以下錯誤:
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M01/47/7C/wKioL1P7IVHx4aVUAADZ2OfSBP4252.jpg" title="3.jpg" alt="wKioL1P7IVHx4aVUAADZ2OfSBP4252.jpg" />
則需要將包刪掉重新安裝,記著用make clean 先清理即可
4.執行make && make install
5.為mariadb提供設定檔
[[email protected] support-files]# cp my-large.cnf /etc/mysql.cnf # 這裡必須以cnf結尾,不能用conf結尾
[[email protected] support-files]# vim /etc/mysql.cnf
在其中加上 datadir=/mydata/data即可
6.為mariadb提供服務指令碼使其支援service啟動
在/usr/local/mysql下使用scripts/mysql_install_db --user=mysql --datadir=/mydata/data 初始化mariadb
注意必須在/usr/local/mysql 下使用此命令 否則會出現一下錯誤
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/47/7B/wKiom1P7IIDAwjygAAFkjYXp-5I463.jpg" title="3.jpg" alt="wKiom1P7IIDAwjygAAFkjYXp-5I463.jpg" />
7.為能用chkconfig 控制 需要 用 chkconfig --add mysqld
8.啟動服務 驗證是否可以串連Mysql
[[email protected] mariadb-10.0.12]# service mysqld restart Shutting down MySQL.. [確定] Starting MySQL. [確定] [[email protected] mariadb-10.0.12]# mysql Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 4 Server version: 5.5.5-10.0.12-MariaDB-log Source distribution Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type ‘help;‘ or ‘\h‘ for help. Type ‘\c‘ to clear the current input statement. mysql>
至此我們mariadb的編譯安裝已經完成。
本文出自 “linux營運” 部落格,請務必保留此出處http://germanygu.blog.51cto.com/3574209/1544872
Mysql的介紹以及編譯安裝mariadb