LNMP环境搭建
个人建站经常使用Wordpress或者Discuz这两个开源软件。而这都需要LNMP基础环境的支持。本文介绍怎么在Centos7下面安装nginx+mysql+PHP
本文转自我个人的公众号:天目星 ,请大家多多关注。链接:前往天目星
一、 使用的软件版本。
linux: CentOS Linux release 7.5.1804 #默认关闭防火墙
nginx: nginx-1.12.2
mysql: mysql-5.6.43
PHP: php-7.2.0
二、 安装依赖包(如未安装)
linux编译器:yum install gcc gcc-c++
nginx依赖包:yum install pcre pcre-devel zlib zlib-devel
yum install openssl openssl-devel
PHP依赖包: yum install libxml2 libxml2-devel openssl openssl-devel \
bzip2 bzip2-devel libcurl libcurl-devel \
libjpeg libjpeg-devel libpng libpng-devel \
freetype freetype-devel gmp gmp-devel \
libmcrypt libmcrypt-devel \
readline readline-devel libxslt libxslt-devel
mysql依赖包: yum install libaio
三、 安装Nginx
下载: wget http://nginx.org/download/nginx-1.12.2.tar.gz
解压:tar -xvf nginx-1.12.2.tar.gz
创建安装nginx的目录:
mkdir /usr/local/nginx
编译:(安装目录为:/usr/local/nginx)
cd nginx-1.12.2
./configure --prefix=/usr/local/nginx --with-http_ssl_module
make && make install
创建nginx的运行用户
groupadd -r -g 308 nginx
useradd -u 308 -g 308 -s /sbin/nologin nginx
chown -R nginx.nginx /usr/local/nginx
vim /usr/local/nginx/conf/nginx.conf,并设置user参数:
user nginx nginx;
配置nginx启动服务
vim /etc/systemd/system/nginx.service
[Unit]
Description=nginx
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/nginx/sbin/nginx
ExecReload=/usr/local/nginx/sbin/nginx -s reload
ExecStop=/usr/local/nginx/sbin/nginx -s stop
PrivateTmp=true
[Install]
WantedBy=multi-user.target
启动服务:systemctl start nginx.service
设置开机自启动:systemctl enable nginx.service
检查启动情况:systemctl status nginx.service
打开浏览器测试访问情况:http://<Your IP Address>
四、安装mysql (使用二进制版本)
下载软件:在mysql官网下载相应的版本mysql-5.6.43-linux-glibc
解压软件:
tar xvf mysql-5.6.43-linux-glibc2.12-x86_64.tar.gz -C /usr/local/
改名:
cd /usr/local
mv mysql-5.6.43-linux-glibc2.12-x86_64 mysql
创建mysql的data目录(分开存放data与binglog)
mkdir -pv /mydata/{data,binlog}
创建mysql运行用户
groupadd -r -g 306 mysql
useradd -u 308 -g 306 -s /sbin/nologin mysql
chown -R mysql.mysql /mydata/
配置环境变量
echo 'export PATH=$PATH:/usr/local/mysql/bin/' >> /etc/profile
为mysql include文件夹创建软链接
ln -sv /usr/local/mysql/include /usr/include/mysql
配置myslq库文件路径
echo "/usr/local/mysql/lib/" > /etc/ld.so.conf.d/mysql.conf
ldconfig -v
初始化mysql至datadir路径中
cd /usr/local/mysql
scripts/mysql_install_db --user=mysql --datadir=/mydata/data
编辑my.cnf文件
[mysqld]
basedir=/usr/local/mysql
datadir=/mydata/data
log_bin=/mydata/binlog/master-bin
binlog_format=row
innodb_file_per_table=1
innodb_buffer_pool_size=128M
server_id=10
gtid-mode=on #此gtid开启需要配置以下两条语句
enforce-gtid-consistency=true #配置gtid开启
log_slave_updates=1 #配合gtid开启
socket=/tmp/mysql.sock
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
配置启动脚本
cd /usr/local/mysql
cp support-files/mysql.server /etc/init.d/mysql.service
加入服务:chkconfig --add mysql.service
设置开机自启动:chkconfig mysqld on
启动mysql服务:service mysqld start
初始化数据库
mysql_secure_installation
登陆mysql配置远程登陆账号
mysql> CREATE USER 'root'@'%' IDENTIFIED BY 'YourPassword';
mysql> GRANT ALL ON *.* TO 'root'@'%';
mysql> FLUSH PRIVILEGES;