LNMP環境原始碼安裝

2021-10-01 05:43:25 字數 4267 閱讀 2762

mysql原始碼安裝步驟如下

2、建立mysql賬號 (useradd mysql -s /sbin/nologin)

3、安裝 ncurses-devel(yum install -y ncurses-devel)

4、cmake編譯安裝原始碼

5、修改配置檔案

部分安裝過程如下

[root@linux src]# useradd mysql -s /sbin/nologin

[root@linux src]# yum install -y ncurses-devel

[root@linux src]# mkdir -p /usr/local/mysql/var

[root@linux src]# chown -rf mysql:mysql /usr/local/mysql

[root@linux src]# cd mysql-5.6.19/

[root@linux mysql-5.6.19]# cmake . -dcmake_install_prefix=/usr/local/mysql -dmysql_datadir=/usr/local/mysql/var -dsysconfdir=/etc

[root@linuxprobe mysql-5.6.19]# make

[root@linuxprobe mysql-5.6.19]# make install

-dcmake_install_prefix 引數用於定義資料庫服務程式的儲存目錄,

-dmysql_datadir 引數用於定義真實資料庫檔案的目錄,

-dsysconfdir 則是定義mysql資料庫配置檔案的儲存目錄

先刪除/etc目錄中的預設配置檔案,

然後在mysql資料庫程式的儲存目錄scripts內找到乙個名為mysql_install_db的指令碼程式,執行這個指令碼程式並使用--user引數指定mysql服務的對應賬號名稱(在前面步驟已經建立),使用--basedir引數指定mysql服務程式的儲存目錄,使用--datadir引數指定mysql真實資料庫的檔案儲存目錄,這樣即可生成系統資料庫檔案,也會生成出新的mysql服務配置檔案

[root@linux mysql-5.6.19]# rm -rf /etc/my.cnf

[root@linux mysql-5.6.19]# cd /usr/local/mysql

[root@linux mysql]# ./scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/var

系統新生成的mysql資料庫配置檔案鏈結到/etc目錄中,然後把程式目錄中的開機程式檔案複製到/etc/rc.d/init.d目錄中

[root@linux mysql]# ln -s my.cnf /etc/my.cnf

[root@linux mysql]# cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld

[root@linux mysql]# chmod 755 /etc/rc.d/init.d/mysqld

修改為mysql資料庫程式的儲存目錄和真實資料庫的檔案內容

vim /etc/rc.d/init.d/mysqld

46 basedir=/usr/local/mysql

47 datadir=/usr/local/mysql/var

[root@linuxprobe mysql]# service mysqld start

starting mysql. success!

[root@linuxprobe mysql]# chkconfig mysqld on

把命令所儲存的目錄永久性地定義到path變數中

vim /etc/profile

71 fi

72 fi

73 done

74 export path=$path:/usr/local/mysql/bin

75 unset i

mysql資料庫服務程式還會呼叫到一些程式檔案和函式庫檔案。由於當前是通過原始碼包方式安裝mysql資料庫,因此現在也必須以手動方式把這些檔案鏈結過來

[root@linux mysql]# mkdir /var/lib/mysql

[root@linux mysql]# ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql

[root@linux mysql]# ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock

[root@linux mysql]# ln -s /usr/local/mysql/include/mysql /usr/include/mysql

mysql資料庫進行初始化

[root@linux mysql]# mysql_secure_installation

...............

....

.......

nginx原始碼安裝見:

本篇繼安裝nginx詳細介紹執行nginx使用者問題

[root@ ~]# ps -ef | grep nginx

root 3390 3359 0 21:04 pts/0 00:00:00 grep --color=auto nginx

root 17009 1 0 nov29 ? 00:00:00 nginx: master process ./nginx

nginx 96283 17009 0 dec02 ? 00:00:00 nginx: worker process

nginx 96285 17009 0 dec02 ? 00:00:00 nginx: worker process

nginx 96286 17009 0 dec02 ? 00:00:00 nginx: worker process

nginx 96287 17009 0 dec02 ? 00:00:00 nginx: worker process

ps檢視nginx發現master程序為root使用者執行,worker程序為nginx使用者執行

檢視nginx配置檔案 ./conf/nginx.conf,檔案前幾行如下。安裝nginx完後預設執行worker程序為nobody使用者,如需更改其他使用者執行,將nobody注釋,做出如下修改即可

worker_prosesses 為執行worker程序數,該數值根據伺服器的cpu個數確定,一般情況可設定worker數等於cpu格式

#user nobody;

user nginx;

worker_processes 4;

設定完執行worker程序的使用者,直接網頁訪問nginx,會出現404 forbidden

該原因為nginx使用者沒有許可權訪問nginx靜態頁面檔案,

需將nginx安裝目錄/usr/local/nginx檔案許可權修改為nginx:nginx

[root@ nginx]# ll

total 4

drwx------ 2 nginx nginx 6 nov 29 22:36 client_body_temp

drwxr-x--- 2 nginx nginx 4096 dec 2 20:07 conf

drwx------ 2 nginx nginx 6 nov 29 22:36 fastcgi_temp

drwxr-x--- 2 nginx nginx 58 nov 29 22:53 html

drwxr-x--- 2 nginx nginx 55 nov 29 22:38 logs

drwx------ 2 nginx nginx 6 nov 29 22:36 proxy_temp

drwxr-x--- 2 nginx nginx 18 nov 29 22:26 sbin

drwx------ 2 nginx nginx 6 nov 29 22:36 scgi_temp

drwx------ 2 nginx nginx 6 nov 29 22:36 uwsgi_temp

驗證使用者(/sbin/nologin使用者)對檔案是否有訪問許可權方法

sudo -u nginxuser ls /var/www/project

# 上面即驗證nginxuser對/var/www/project資料夾是否有訪問許可權

原始碼安裝lnmp環境

做web幾年了 一直在windows平台開發,最近迫切感到liunx的重要性,許多東西必須在liunx上才能應用,所以開始學習liunx,那麼第一步當然是安裝系統,我這裡選擇centos7 第一步 安裝mysql mysql如果原始碼安裝貌似是比較複雜 這裡網上大部分是採用yum 安裝的 我也就yu...

原始碼安裝LNMP

1 編譯安裝nginx 2 編譯安裝mysql tar xzvf mysql mysql 5.1.34.tar.gz c usr local src 如果不存在mysql 使用者,則建立之 configure prefix usr local mysql make make install rm r...

LNMP 原始碼安裝

參考文件 安裝的時候提示要安裝zlib庫 yum y install zlib zlib devel 原始碼安裝 的時候錯誤太多,到最後給我搞崩潰了 我就直接 安裝了 新增 epel 源 rpm uvh新增 remi 源 rpm uvh安裝 php yum enablerepo remi,remi ...