MySQL啟動方式-LNMP安裝與部署博客
第2章 mysql設置啟動方式更改
1、修改啟動方式
[root@web01 /application/mysql/bin]# cd /application/mysql
[root@web01 /application/mysql]# cp support-files/mysql.server /etc/init.d/mysqld
[root@web01 /application/mysql]# chmod +x /etc/init.d/mysqld
2、修改配置文件
[root@web01 mysql]# sed -i ‘s#/usr/local/mysql#/application/mysql#g‘ /etc/init.d/mysqld /application/mysql/bin/mysqld_safe
3、殺死mysqld進程
[root@web01 mysql]# pkill mysqld
4、查詢mysql進程是否存在
[root@web01 mysql]# ps –ef|grep mysql
5、啟動mysql進程
[root@web01 mysql]# /etc/init.d/mysqld start
6、查看網絡端口協議是否有mysql選項
netstat –lntup|grep mysql
7、設置開機自啟動,並且查看設置成功沒。
chkconfig mysqld on
chkconfig –list mysqld
8、設置環境變量方便啟動mysql
PATH="/application/mysql/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin"
[root@web01 mysql]# tail -1 /etc/profile
export PATH="/application/mysql/bin:$PATH"
# 助教文檔---將數據庫命令加入環境變量中
echo ‘export PATH=/application/mysql/bin:$PATH‘ >>/etc/profile
source /etc/profile
註意說明:當關機後可能設置的別名或環境變量會失效,所以需要謹慎檢查配置文件是否有效果,在生效一遍環境變量。
2.1 mysql啟動失敗錯誤故障總結
1、如果啟動錯誤,就將以上所有步驟全部做好,否則錯一步,就不行,其他都啟動會報錯。
第3章 mysql管理數據庫命令
1、管理數據庫
show databases; #查看數據庫
create database oldboy; #創建數據庫
drop database test; #刪除數據庫
use mysql #切換數據庫,cd /tmp
select database(); #查看當前所在的庫,pwd
2、管理用戶
select user,hosts from mysql.user; #查看當前有哪些用戶。用戶@主機名 代表一個用戶。
grant all on *.* to oldboy@localhost identified by “oldboy123”;
搜權 所有 所有庫 所有表 用戶 客戶主機 密碼
select user,host from mysql.user; #再次查看數據庫默認表,裏面直接查看新增的用戶。
3、為root設置密碼
mysqladmin password oldboy123
4、修改root密碼:
mysqladmin –uroot –polboy123 password oldboy
3.1.1 mysql設置不需密碼登錄(簡化,且保證安全 )
1、vim /etc/my.cnf 在配置文件的開頭,要在mysqld標簽的前面,插入下面參數此到文件裏。
[client]
user = root
password = oldboy123
2、設置不需密碼登錄。
chmod 400 /etc/my.cnf #能看到用戶密碼登錄就不安全,設置400權限,root用戶能看,其他用戶不能看也不可修改。
說明:不用密碼登錄。最好不要,為了管理方便、學習才使用快捷方式登錄。
註意說明:當
第4章 安裝PHP
4.1 php介紹
1、一門網頁語言,下坡趨勢,java python go
2、搭建PHP環境,解析PHP程序環境。PHP服務
傳統:
配合Apache 使用mod_php5.so,解析PHP的
配合NGINX 使用fastcgi的方式,解析PHP
fastcgi 動態語言接口,獨立啟東守護進程提供服務。
4.1.1 安裝依賴包
說明:註意每行每行執行,否則會編譯過程中會失敗。
yum install epel-release -y
yum install zlib-devel libxml2-devel libjpeg-devel libjpeg-turbo-devel libiconv-devel -y
yum install freetype-devel libpng-devel gd-devel libcurl-devel libxslt-devel libxslt-devel -y
yum -y install libmcrypt-devel
yum -y install mhash
4.1.2 安裝libiconv
mkdir -p /home/oldboy/tools #創建目錄
cd /home/oldboy/tools #進入目錄
wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.15.tar.gz #下載libicon文件
tar zxf libiconv-1.15.tar.gz #解壓libicon文件
cd libiconv-1.15 #進入解壓後的libicon文件夾
./configure --prefix=/usr/local/libiconv #到解壓後的文件夾裏,啟動程序配置生成參,安裝目錄指定位置。
make #編譯
make install #編譯安裝
4.1.3 編譯安裝php
cd /home/oldboy/tools/ #進入此目錄
上傳php軟件包
tar xf php-5.6.36.tar.gz #解壓配置文件
cd php-5.6.36 #到了此目錄後,下面的程序編譯命令一次性復制執行。
./configure \
--prefix=/application/php5.6.36 \ #前提設置了安裝目錄
--with-mysql=/application/mysql/ \ #同時也設置了這個目錄 #如果沒有mysql目錄,需要設置mysqlnd\
--with-pdo-mysql=mysqlnd \
--with-iconv-dir=/usr/local/libiconv \
--with-freetype-dir \
--with-jpeg-dir \
--with-png-dir \
--with-zlib \
--with-libxml-dir=/usr \
--enable-xml \
--disable-rpath \
--enable-bcmath \
--enable-shmop \
--enable-sysvsem \
--enable-inline-optimization \
--with-curl \
--enable-mbregex \
--enable-fpm \
--enable-mbstring \
--with-mcrypt \
--with-gd \
--enable-gd-native-ttf \
--with-openssl \
--with-mhash \
--enable-pcntl \
--enable-sockets \
--with-xmlrpc \
--enable-soap \
--enable-short-tags \
--enable-static \
--with-xsl \
--with-fpm-user=www \ #設置了管理用戶www
--with-fpm-group=www \ #設置了管理組www
--enable-ftp \
--enable-opcache=no
說明:上方代碼中不允許有空格和那些註釋,必須要去掉否則一次性執行不了。
故障:
configure: error: Cannot find OpenSSL‘s <evp.h>
解決:
yum install openssl openssl-devel
ln -s /usr/lib64/libssl.so /usr/lib/
4.1.4 設置快捷方式
ln -s /application/mysql/lib/libmysqlclient.so.18 /usr/lib64/ #設置mysql某個模塊為/usr/lib64快捷鍵
4.1.5 編譯與編譯安裝
make && make install #前提要在/home/oldboy/tools/php-5.6.36目錄下才能執行make和make編譯安裝
4.1.6 設置php快捷方式
ln -s /application/php5.6.36 /application/php #設置php安裝好的目錄的軟連接為 /appication/php
4.1.7 生成php引擎的配置文件
cd /home/oldboy/tools/php-5.6.36 #進入安裝目錄
cp php.ini-production /application/php/lib/php.ini #復制解析PHP的配置文件到其他安裝目錄下
4.1.8 生成PHP進程的配置文件
cd /application/php/etc/ #進入php相關目錄
cp php-fpm.conf.default php-fpm.conf #復制例文件一份為php進程配置文件
4.1.9 啟動php fastcgi服務
/application/php/sbin/php-fpm #執行此路徑的這個程序啟動php
4.1.10 查看php網絡端口是否啟動成功
netstat -lntup|grep php-fpm #查看php網絡端口,如有以下信息證明安裝成功
#tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 21709/php-fpm
4.2 nginx配置:所有擴展名為.php的拋給PHP服務器解析
1、配置段如下代碼:
location ~ .*\.(php|php5)?$ { #定義如果用戶輸入\前面不管什麽內容,只要\後面是.php或php5的文件後綴名就能解析
root html/blog; #網站目錄是html/blog
fastcgi_pass 127.0.0.1:9000; #當用戶訪問時就把文件拋給9000端口php服務去解析。
fastcgi_index index.php;
include fastcgi.conf;
}
2、配合nginx結合PHP
cd /application/nginx/conf/extra #進入要解析php的虛擬主機配置文件裏添加參數。
[root@web01 extra]# vim 03_blog.conf #編輯虛擬主機文件加入php解析的代碼。
server {
listen 80;
server_name blog.etiantian.org; #主機名設置的時候需要跟本地hosts解析。
location / {
root html/blog;
index index.html index.htm;
}
location ~ .*\.(php|php5)?$ {
root html/blog; #註意跟網站的目錄一致。
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;
}
}
重要說明:添加php參數時,有可能是缺少一個括號的},需要先檢查語法在添加,防止多走彎路去排錯,並且還有要在}的下面去添加此參數,一定要仔細看。
3、重啟nginx服務
/application/nginx/sbin/nginx –t #檢查語法錯誤
/application/nginx/sbin/nginx -s reload #平滑重啟
4、nginx+php+mysql環境驗證
cd /application/nginx/html/ #進入此目錄新建一個php環境變量進去測試。
cat >>test.php<<EOF
<?php phpinfo(); ?>
EOF
第5章 部署wordpress博客
5.1 在網站目錄下上傳網站程序代碼
cd /application/nginx/html/blog #進入網站根目錄
unzip -o wordpress-4.9.6.zip #unzip解壓網站程序壓縮包文件
mv wordpress/* . #移動壓縮包文件裏的目錄中的文件到本目錄。
chown -R www.www ../blog/ #設置網站目錄blog的屬主和屬組設置為www
5.2 創建數據庫wordpress,創建用戶woredpress,密碼oldboy123
mysql #登錄mysql數據庫
create databases wordress; #創建數據庫wordpress
grant all on wordpress.* to ‘wordpress’@’172.16.1.0 255.255.255.0’ identified by ‘oldboy123’; #授權wordpress用戶所有權限並且設置密碼。
select user,host from mysql.user; #查詢數據庫默認賬號密碼,查看是否添加進去了。
5.3 修改連接數據庫的文件
mv wp-config-sample.php wp-config.php #復制一份配置文件模板,到目錄下
vim wp-config.php #編輯配置文件。
define(‘DB_NAME‘, ‘wordpress‘); #數據庫名字
/** MySQL database username */
define(‘DB_USER‘, ‘root‘); #數據庫賬號
/** MySQL database password */
define(‘DB_PASSWORD‘, ‘oldboy123‘); #數據庫密碼
/** MySQL hostname */
define(‘DB_HOST‘, ‘localhost‘); #數據庫主機地址
5.4 nginx主配置文件設置默認文檔順序為index.php
vim nginx.conf #編輯nginx主配置文件
index index.php index.html index.htm #將默認文檔那一個選項設置為index.php優先,否則wp網站程序不會自動引導到安裝頁面,會顯示403
5.5 負載均衡重要說明:安裝wp程序時,要配置好本地host對應www.etiantian.org域名,linux的hosts對應域名,nginx的server_name配置好,否則使用ip創建wordpress數據庫時會使用IP創建頁面,導致所有頁面和圖片都是某個IP裏的,導致實現不了負載均衡。
1、/etc/hosts
2、C:\windows\System32\drivers\etc\hosts
3、vim nginx.conf配置文件中的server_name
5.6 瀏覽器安裝博客程序
輸入地址開始安裝http://blog.etiantian.org/index.php #輸入數據庫、和管理員賬號密碼。
5.7 wordpress創建數據庫配置文件說明
說明:可先搭建好博客,到博客/wp-admin/裏面自動跳轉到安裝頁面的,到時候可以直接在網頁安裝的方式去自動創建好數據庫連接配置文件,當然也可以直接通過文件直接去修改。
註意:以上所有操作都要操作,不僅僅是教的,老男孩老師是邊教,並且一邊部署的,如果你覺得教了的話,你沒有去跟著操作,他後面做的東西,你是做不出的,一定要跟著操作就行,否則全部報錯,搞的腦袋精神疲憊。
5.8 上課操作一定要跟老男孩走,否則後面全部出錯。
說明:不管是nginx、mysql等某些自己也會的配置,如果不跟著操作,後面如果編譯某些的東西或者做什麽東西的時候,如果沒有具體告訴大家某樣設置是幹什麽的,那就完蛋了後面全部報錯並且跟不上課程節奏了,所以一步一步全部都很重要。
自己覺得老男孩的不重要,覺得是教人家做,以為後面不需要,比如博客,教我們搭建,我以為不需要用到,結果沒去弄,結果後面就全部操作跟不上了,全部用到了,一定要做什麽就做什麽。
MySQL啟動方式-LNMP安裝與部署博客