MySQL簡介以及二進制程序方式安裝

數據的組織結構

     層次型

     網狀型

     關係型

使用DBMS的優點

     1,數據管理獨立性;

     2,有效的完成數據存取;

     3,保證數據完整性和安全性;

     4,數據的集中管理;

     5,併發存儲與故障恢復;

     6,減少應用程序開發時間;

數據庫管理系統(DBMS)設計的目標

     爲了解決:

     1,數據的冗餘和不一致;

     2,數據訪問困難;

     3,數據孤立;

     4,數據完整性問題;

     5,數據原子性問題;

     6,併發訪問問題;

     7,安全性問題;

DBMS的組件

     1,分析器;

     2,計劃執行器;

     3,優化器;

     4,文件的存取方法;

     5,緩存器;

     6,磁盤空間管理器;

     7,故障恢復管理器;

     8,事務管理器;

     9,鎖管理器;

RDMBS:Relational Database Management System,關係型數據庫系統,主要完成的操作有:

     1,數據庫創建、刪除和修改;

     2,表的創建、刪除和修改;

     3,索引的創建和刪除;

     4,用戶和權限的管理;

     5,數據的增刪改;

     6,數據查詢;

常見的RDBMS軟件:egreSQL,Oracle,Sybase,Infomix,SQL Server,MySQL,PostgreSQL,pgSQL,EnterpriseDB,DB2,PerconaSQL;

常見的NoSQL(非關係型數據庫):MongoDB,Redis,HBase;

事務:是數據庫管理系統執行過程中的一個邏輯單位,由一個有限的數據庫操作序列構成;一個數據庫事務通常包含了一個序列的對數據庫的讀和寫操作;

事務的四個特性(ACID)

     1,原子性(Atomicity):事務被作爲一個整體執行,包含在其中的對數據庫的操作要麼全部執行,要麼都不執行;事務在執行過程中發生錯誤,會被回滾到事務開始前的狀態,就像這個事務從來沒有執行過一樣。

     2,一致性(Consistency):在事務開始之前和事務結束之後,數據庫的完整性沒有被破壞;這表示寫入的資料必須完全符合所有的默認規則,包括資料的精確度、串聯性以及後續數據可以自發性地完成預定的工作;

     3,隔離性(Isolation):兩個或多個事務併發訪問(查詢和修改)數據庫的同一個數據時所表現出來的相互關係,即一個事務的執行不應影響其他事務的執行;事務隔離分爲未提交、讀提交、可重複讀和串行化幾個級別;

     4,持久性(Durability):在事務完成後,該事務對數據庫所作的更改便持久且完全的保存在數據庫中;

關係型數據庫的對象

     1,庫

     2,表

     3,視圖

     4,索引

     5,事務

     6,用戶

     7,存儲過程

     8,存儲函數

     9,觸發器

     10,遊標

     11,事件調度器

存儲引擎:將邏輯層的操作轉換爲物理機制,並負責完成物理層上的操作;

     MySQL常用的存儲引擎:MyISAM,InnoDB;

MySQL:MySQL是一個關係型數據庫系統,由MySQL AB公司開發,先手被Sun和Oracle收購,是目前最爲流行的RDBMS之一;

     官方站點:http://www.mysql.com/

     MySQL的官方下載地址:http://dev.mysql.com/downloads/mysql/

     MySQL搜狐鏡像的下載地址:http://mirrors.sohu.com/mysql/;  

     MySQL community相關軟件的說明

         MySQL Community Server        mysql客戶端和服務器整合起來的核心包;

         MySQL Cluster        提供Mysql集羣功能的程序包,但其極少使用;

         MySQL Workbench        輔助設計mysql數據庫的程序,如幾張表,哪些字段等;

         MySQL Utilities        MySQL工具組件,主要用於管理和維護MySQL;

         MySQL Proxy        MySQL的中間件,代理接收發往MySQL數據庫的請求,將需要求路由至不同的後端主機上去;

         MySQL Connectors        MySQL的連接器,程序連接MySQL的驅動;

         MySQL Benchmark Tool        對MySQL進行壓力測試的工具;

     MySQL rpm包的功能

          mysql.i386          mysql的客戶端;

          mysql-server.i386          mysql的服務器端;

          mysql-connector-odbc.i386          mysql的鏈接器;

          mysql-test          mysql的測試組件;

          mysql-bench          mysql的性能測試組件;

          php5-mysql          php訪問mysql的驅動;

MySQL的安裝方式(Linux系統)

     1,源碼編譯安裝;

     2,通用二進制格式的程序;

     3,rpm包安裝;

MySQL的配置文件:my.cnf,該文件是集中式的多段配置文件,通常放在/etc/目錄下,

     [mysqld]          該段是對MySQL服務器的配置;

     [mysql]            爲客戶端程序提供配置;

     [client]             客戶端和服務器工具的通用配置,包括mysqldump,mysqladmin等等;

     注意:1,MySQL的配置文件可以存放在多個位置,將所有找到的配置文件參數合併後生效,如果有重複的參數,後找到的參數生效;

               2,配置文件的讀取順序:/etc/my.cnf,/etc/mysql/my.cnf,$MYSQL_BASE/my.cnf,~/.my.cnf;

MySQL的程序

     服務器程序:mysqld;

     客戶端程序:mysql;

MySQL的數據目錄(datadir)

     二進制安裝:/usr/local/mysql/data;

     rpm包安裝:/var/lib/mysql;

     建議將數據目錄存放在lv上,以便於容量的擴展;

MySQL監聽端口:3306/tcp;

使用通用二進制格式的MySQL

二進制程序下載地址:http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.19-linux-glibc2.5-i686.tar.gz;

爲mysql準備數據目錄:/mysql/data;

1,創建mysql使用的系統用戶和組   ;  

     groupadd -r -g 306 mysql

     useradd -g 306 -u 306 -r mysql

2,將程序包解壓,併爲其創建鏈接;

     tar xf /mysql-5.6.19-linux-glibc2.5-i686.tar.gz -C /usr/local/

     ln -s mysql-5.6.19-linux-glibc2.5-i686 mysql

3,修改mysql程序目錄和數據目錄的權限;

     chown -R root.mysql /usr/local/mysql/*

     chown -R mysql.mysql /mysql/data

4,初始化mysql;

     cd /usr/local/mysql

     scripts/mysql_install_db --user=mysql --datadir=/mysql/data

5,爲mysql提供服務腳本;

     cp support-files/mysql.server /etc/init.d/mysqld

     chkconfig --add mysqld

6,爲mysql提供配置文件;

     cp support-files/my-default.cnf /etc/my.cnf          如果有舊的配置文件,請先備份;

7,修改配置文件:vim /etc/my.cnf

     basedir = /usr/local/mysql          mysql工作目錄

     datadir = /mysql/data          mysql數據目錄

     保存退出;

8,修改系統PATH變量;

     vim /etc/profile.d/path.sh

     寫入:export PATH=$PATH:/usr/local/mysql/bin

     保存退出;

     source /etc/profile

9,將man文件檔添加至man pages;

     vim /etc/man.config

     MANPATH /usr/local/mysql/man

     保存退出;

10,將mysql的lib目錄添加至系統;

     vim /etc/ld.so.conf.d/mysql.conf

     寫入:/usr/local/mysql/lib

     保存退出;

     ldconfig

11,輸出mysql的頭文件;

     ln -s /usr/local/mysql/include /usr/include/mysql

12,啓動mysql;

     service mysqld start

13,查看mysql是否正常監聽端口;

     netstat -tlunp | grep 3306

聲明:本文爲學習筆記,內容參考多方資料,如涉及版權問題,請告知本人,謝謝!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章