5月23日任務
11.1 LAMP架構介紹
11.2 MySQL、MariaDB介紹
11.3/11.4/11.5 MySQL安裝
LAMP架構介紹
從現在開始了針對實際工作的內容。
L Linux
A Apache(HTTPD)
M Mysql
P PHP
三個角色可以在一臺機器,也可以分開。httpd和php要在一起,數據庫可以從遠程訪問,或者分布式訪問。
MySQL_MariaDB介紹
Mariadb
MariaDB數據庫管理系統是MySQL的一個分支,主要由開源社區在維護,采用GPL授權許可。開發這個分支的原因之一是:甲骨文公司收購了MySQL后,有將MySQL閉源的潛在風險,因此社區采用分支的方式來避開這個風險。
MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能輕松成為MySQL的代替品。在存儲引擎方面,10.0.9版起使用XtraDB(名稱代號為Aria)來代替MySQL的InnoDB。
MariaDB由MySQL的創始人麥克爾·維德紐斯主導開發,他早前曾以10億美元的價格,將自己創建的公司MySQL AB賣給了SUN,此后,隨著SUN被甲骨文收購,MySQL的所有權也落入Oracle的手中。MariaDB名稱來自麥克爾·維德紐斯的女兒瑪麗亞(英語:Maria)的名字。
當前最新(2018.05)的版本有兩種mariadb ax tx。以下是簡單的區別。
安裝MYSQL
主要有三種安裝方式
rpm。yum安裝。缺點是不好定義路徑。默認安裝在usr/local
源碼安裝。config make make install 。mysql是cmake而不是make。
二進制免編譯。是指相當于在發布之前,首先在一臺linux服務器上做了一個編譯,編譯完之后將編譯完成的文件重新放到一個目錄下后打包壓縮并發布。好處是不需要花很大的精力編譯,直接使用??梢灾苯臃诺叫枰闹付夸浵?。
接下來演示的是第三種方式來安裝。
下載包。首先要到下載目錄,use/local/src
下載的時候要區分平臺,要下載對應的32/64位包。查看自己系統是什么平臺,使用 uname -a
然后下載對應的二進制包
http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz
2. 解壓
3. 解壓后的目錄改名同時移動到/usr/local/mysql目錄下
4. 進入mysql/后創建一個mysql的用戶和一個data/目錄---存放mysql的數據,數據目錄
5 初始化mysql這個庫,指定mysql的用戶是什么,這里我們是mysql這個用戶 然后再指定數據的目錄是 /data
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql
這出現了一個錯誤
這里提供了一個如何查找缺失包或者模塊的思路,就是yum 查找 yum list |grep perl |grep -i dumper
如果不確定的話可以將以上幾種都安裝一遍。實際上這需要安裝的是yum install -y perl-Data-Dumper
安裝完之后重新執行
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql
成功
6. 初始化完成了,接下來需要拷貝配置文件和啟動腳本。
模板配置文件:mysql/support-files/my-default.cnf 需要拷貝到 /etc/my.cnf my.cnf就是mysql的配置文件的名字,且在etc下,如果用其他名字或者放在其他位置需要在啟動的時候進行指定。
這個時候會發現在etc目錄下已經有了這個配置文件,其實無妨,改成需要的就好。也可以通過rpm -qf來查這個文件是從哪來的。
然后 vim /etc/my.cnf 進行修改配置
啟動腳本:cp mysql/support-files/mysql.server /etc/init.d/mysqld 拷貝后有幾處地方需要編輯
basedir用來指定mysql 程序目錄
datadir用來定義數據存放的位置
然后將配置文件的權限給成755
將其加入系統服務列表中去 chkconfig --add mysqld 然后查看一下,下次開機會自動啟動。
有幾種啟動服務的方式
service mysqld start
/etc/init.d/mysqld start
查看進程
看看監聽的端口是什么端口
還有另外一種命令行啟動的方法
/usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf --user=mysql --datadir=/data/mysql & 放到后臺操作
killall mysqld 關掉服務,因為是命令行啟動的,并非服務啟動。killall的好處是先停止寫讀操作,完成當前的寫讀之后才將進程殺死。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。