1. 程式人生 > >4月9日 LAMP架構

4月9日 LAMP架構

MySQL MariaDB

安裝MySQL
LAMP,它是由linux、Apache、MySQL、PHP的簡寫。其實就是將Apache、MySQL、PHP安裝到linux上,來組成一個環境來運行php的腳本語言,Apache是最常用的web服務軟件,而MySQL是較小型的數據軟件。這三個可以安裝在一臺機器上,也可以分開安裝,但是httpd和PHP一定要在一起。

首先我們先安裝MySQL。MySQL是一個數據庫軟件,我們可以將一些數據存到這裏。

首先我們先進入到 cd /usr/local/src。然後我們到這裏去下載一個MySQL。
我們可以到這裏下載wget http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz

下載完後,我們可以查看一下他的大小
[root@linletao-001 src]# du -sh mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz
301M mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz

然後將我們下載好的MySQL解壓縮:tar zxvf mysql-5.6.35-linux-glibc2.5-x86_64.tar.gz

解壓後我們將MySQL目錄移動到 /usr/local/mysql
mv mysql-5.6.35-linux-glibc2.5-x86_64 /usr/local/mysql
這種方式是移動帶重命名,而不是將它直接移動到/usr/local/mysql這個目錄中

然後我們查詢一下這個目錄
[root@linletao-001 src]# ls /usr/local/mysql
bin COPYING data docs include lib man mysql-test README scripts share sql-bench support-files

然後我們建立一個運行MySQL的賬號,叫MySQL賬戶,我們在創建的時候也可以不建立家目錄。
[root@linletao-001 src]# useradd -s /sbin/nologin -M mysql
然後我們查詢一下家目錄,發現裏面沒有mysql這個目錄。
[root@linletao-001 src]# ls /home

aming cp linletao user

然後我們進行初始化庫
用這個命令來初始化庫 ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql
其中:user=mysql(指定賬戶) datadir=/data/mysql(存放數據)
在這裏我麽會遇到/data/mysql不存在的情況,所以我們先創建/data/mysql目錄。
[root@linletao-001 src]# mkdir -p /date/mysql
然後我們將它的權限做一個更改
[root@linletao-001 src]# mkdir -p /date/mysql
然後再來執行初始化庫的命令
./scripts/mysql_install_db --user=mysql --datadir=/data/mysql
在我們初始化的時候出現這樣的提示
FATAL ERROR: please install the following Perl modules before executing ./scripts/mysql_install_db:
Data::Dumper
這是我們系統中沒有缺少autoconf庫 ,我們可以用yum去下載它
[root@linletao-001 mysql]# yum -y install autoconf
下載完後我們在初始化一次
[root@linletao-001 mysql]# ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql
Installing MySQL system tables..../bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
然後再一次提示,缺少缺少libaio庫文件,我們繼續用yum去安裝。
[root@linletao-001 mysql]# yum install libaio* -y
安裝完成後,我們再一次初始化,初始化完成後我們查看一下是否成功
[root@linletao-001 mysql]# echo $?
0
如果結果為0,則證明初始化成功。
echo $?這條命令可以用於查看命令是否轉型成功。如果成功,那麽他的結果就為0

然後我麽將配文件和啟動腳本放到相應的目錄中去。
配置文件在support-files/
mysql的配置文件在/etc/my.cnf中,這個在我們裝系統的時候就已經創建好了,所以我們不需要他。用我們support-files下的my-default.cnf將它覆蓋
[root@linletao-001 support-files]# cp my-default.cnf /etc/my.cnf
cp:是否覆蓋"/etc/my.cnf"? y(在這裏輸入y即可覆蓋)

然後我們再復制一個啟動的腳本
cp support-files/mysql.server /etc/init.d/mysqld
[root@linletao-001 support-files]# cp mysql.server /etc/init.d/mysqld
復制完後我們查看一下是否成功
[root@linletao-001 support-files]# ls /etc/init.d
123 functions mysqld netconsole network README
我們發現已經復制成功了

然後問我們修改它的屬性
[root@linletao-001 support-files]# chmod 755 /etc/init.d/mysqld
然後我們再查看一下它的屬性
[root@linletao-001 support-files]# ll /etc/init.d/mysqld
-rwxr-xr-x 1 root root 10875 4月 2 23:21 /etc/init.d/mysqld
已經成功

然後我們修改腳本
basedir=/usr/local/mysql(mysql程序目錄,他是解壓完後重命名的那個目錄)
datadir=/data/mysql(我們剛才定義的)
在修改的時候我我們只要將這兩個地方增加一些路徑就可以,然後保存。

然後我們將它加入到系統服務裏面去
[root@linletao-001 support-files]# chkconfig --add mysqld

然後設置開機啟動
[root@linletao-001 support-files]# chkconfig mysqld on

然後我們啟動mysql
[root@linletao-001 support-files]# /etc/init.d/mysqld start
Starting MySQL SUCCESS!
提示啟動成功

然後我們查看一下
[root@linletao-001 support-files]# ps aux |grep mysqld
root 1350 0.0 0.1 11768 1588 pts/0 S 23:44 0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/data/mysql --pid-file=/data/mysql/linletao-001.pid
mysql 1458 0.5 44.4 973052 449508 pts/0 Sl 23:44 0:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/data/mysql --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/data/mysql/linletao-001.err --pid-file=/data/mysql/linletao-001.pid
root 1580 0.0 0.0 112676 984 pts/0 R+ 23:47 0:00 grep --color=auto mysqld

然後我們查看一下有沒有監聽端口
[root@linletao-001 support-files]# netstat -lnp|grep 3306
tcp6 0 0 :::3306 :::* LISTEN 1458/mysqld
以監聽3306端口

4月9日 LAMP架構