[Linux]非外网环境下配置lnmp心得
1.安装gcc编译器
基本所有编译安装包都需要gcc编译器,而且编译安装gcc也需要一个编译器,这是一个悖论。所以,这里只能寻求rpm包安装。但是rpm包需要匹配特定的操作系统内核,所以没有一个通用的包,只能花心思去寻找了
以CentOS7.1.1503 为例,在http://vault.centos.org/中找到适合的版本对应的gcc-rpm
gcc-4.8.3-9.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/gcc-4.8.3-9.el7.x86_64.rpm |
mpfr-3.1.1-4.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/mpfr-3.1.1-4.el7.x86_64.rpm |
libmpc-1.0.1-3.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/libmpc-1.0.1-3.el7.x86_64.rpm |
kernel-headers-3.10.0-229.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/kernel-headers-3.10.0-229.el7.x86_64.rpm |
glibc-headers-2.17-78.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/glibc-headers-2.17-78.el7.x86_64.rpm |
glibc-devel-2.17-78.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/glibc-devel-2.17-78.el7.x86_64.rpm |
cpp-4.8.3-9.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/cpp-4.8.3-9.el7.x86_64.rpm |
gcc c++依赖组件 | |
libstdc++-devel-4.8.3-9.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/libstdc++-devel-4.8.3-9.el7.x86_64.rpm |
gcc-c++-4.8.3-9.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/gcc-c++-4.8.3-9.el7.x86_64.rpm |
下载完成后依次安装
rpm -ivh mpfr-3.1.1-4.el7.x86_64.rpm |
rpm -ivh libmpc-1.0.1-3.el7.x86_64.rpm |
rpm -ivh kernel-headers-3.10.0-229.el7.x86_64.rpm |
rpm -ivh glibc-headers-2.17-78.el7.x86_64.rpm |
rpm -ivh glibc-devel-2.17-78.el7.x86_64.rpm |
rpm -ivh cpp-4.8.3-9.el7.x86_64.rpm |
rpm -ivh gcc-4.8.3-9.el7.x86_64.rpm |
安装gcc c++ |
rpm -ivh libstdcdevel-4.8.3-9.el7.x86_64.rpm |
rpm -ivh gcc-c4.8.3-9.el7.x86_64.rpm |
查看版本,安装成功后会显示环境变量信息
gcc -v |
Using built-in specs. |
至此,gcc编译器安装完毕.
2.安装perl
在perl官网https://www.perl.org下载gz包
perl-5.22.1.tar.gz | http://www.cpan.org/src/5.0/perl-5.22.1.tar.gz |
执行编译安装
tar -zxvf perl-5.22.1.tar.gz |
cd perl-5.22.1 |
./Configure -des -Dprefix=/usr/local/perl |
make |
make test |
make install |
完成安装后查看版本会显示环境变量
perl -v |
This is perl 5, version 22, subversion 1 (v5.22.1) built for x86_64-linux Copyright 1987-2015, Larry Wall Perl may be copied only under the terms of either the Artistic License or the Complete documentation for Perl, including FAQ lists, should be found on |
至此,Perl安装完毕.
3.安装ncurses-devel rpm.
ncurses-devel-5.9-13.20130511.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/ncurses-devel-5.9-13.20130511.el7.x86_64.rpm |
rpm -ivh ncurses-devel-5.9-13.20130511.el7.x86_64.rpm |
至此,ok.
4.安装cmake
cmake-3.4.1.tar.gz | https://cmake.org/files/v3.4/cmake-3.4.1.tar.gz |
tar -zxvf cmake-3.4.1.tar.gz |
cd cmake-3.4.1 |
./bootstrap |
make |
make install |
至此,ok.
5.安装mysql
下载mysql和boost_1_59_0.tar.gz
boost_1_59_0.tar.gz | http://120.52.73.44/nchc.dl.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz |
mysql-5.7.10.tar.gz | http://mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.10.tar.gz |
解压目录
tar -zxvf mysql-5.7.10.tar.gz |
cd mysql-5.7.10 |
创建账号
groupadd -r mysql |
useradd -s /sbin/nologin -g mysql -r mysql |
id mysql |
编译
|
编译参数细节
-DCMAKE_INSTALL_PREFIX=dir_name | 设置mysql安装目录 |
-DMYSQL_UNIX_ADDR=file_name |
设置监听套接字路径,这必须是一个绝对路径名。 *某些低版本默认为/tmp/mysql.sock,较新的版本默认为/var/lib/mysql/mysql.sock |
-DDEFAULT_CHARSET=charset_name | 设置服务器的字符集。 缺省情况下,MySQL使用latin1的(CP1252西欧)字符集。cmake/character_sets.cmake文件包含允许的字符集名称列表。 |
-DDEFAULT_COLLATION=collation_name | 设置服务器的排序规则。 |
-DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 |
存储引擎选项: MyISAM,MERGE,MEMORY,和CSV引擎是默认编译到服务器中,并不需要明确地安装。 静态编译一个存储引擎到服务器,使用-DWITH_engine_STORAGE_ENGINE= 1 可用的存储引擎值有:ARCHIVE, BLACKHOLE, EXAMPLE, FEDERATED, INNOBASE (InnoDB), PARTITION (partitioning support), 和PERFSCHEMA (Performance Schema) |
-DMYSQL_DATADIR=dir_name | 设置mysql数据库文件目录 |
-DMYSQL_TCP_PORT=port_num | 设置mysql服务器监听端口,默认为3306 |
-DENABLE_DOWNLOADS=bool | 是否要下载可选的文件。例如,启用此选项(设置为1),cmake将下载谷歌所使用的测试套件运行单元测试。 |
注:若从新配置需要删除CMakeCache.txt文件.
rm <安装包目录>/CMakeCache.txt |
make,编译所需内存最好大于2GB,否则可能会出现编译器内存不足自动结束进程
make |
make install |
创建数据库文件夹,数据库文件夹是配置文件datadir选项的配置值,通常默认为/var/lib/mysql
mkdir /data |
mkdir /data/mysqldb |
chown -R mysql:mysql /data/mysqldb |
chown -R mysql:mysql /usr/local/mysql |
配置文件
配置文件用来启动一个服务器实例,一些新版本在make install后自动在/etc目录下创建了my.cnf,旧版本需要自行创建/etc/my.cnf:
复制配置模板到/etc,MySQL默认加载配置文件路径是/etc/my.cnf,如需自定义配置文件路径,可以在初始化数据库的时候在mysqld命令加上--defaults-file=<配置项路径>
cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf |
修改my.cnf配置,供初始化数据库使用:
[mysqld] #此路径为db数据文件存储目录,填入刚才创建的/data/mysqldb datadir=/data/mysqldb #此路径为通过unixdomain方式连接数据库的.sock文件,mysqld服务进程启动时会自动创建该文件,必须确保试图通过unixdomain方式连接数据库的外部程序有此路径的访问权限 socket=/usr/local/mysql/share/mysql.sock
初始化数据库,5.7前后版本在初始化数据库方面有差异,因为5.7之后官方建议用mysqld来代替mysql_install_db,详情请参见官方文档
5.7之前版本 | /usr/local/mysql/bin/mysql_install_db --user=mysql --datadir=/data/mysqldb |
5.7之后版本 | /usr/local/mysql/bin/mysqld --initialize --user=mysql |
5.7之后版本,用--initialize-insecure代替--initialize后初始化的root账号将会为空密码,否则密码会被记录在--log-error[=file_name]配置项配置的文件中(或第一次启动时,会在root目录下生产一个随机的密码,文件名为.mysql_secret?) | /usr/local/mysql/bin/mysqld --initialize-insecure --user=mysql |
配置启动项
centOS7之前的启动方式 | |
把服务脚本模板复制到/etc/init.d下 | cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld |
chmod 755 /etc/init.d/mysqld |
|
如果不存在则运行chkconfig --add mysqld | chkconfig --list mysqld |
chkconfig --add mysqld |
|
设置MySQL在345等级自动启动 | chkconfig --level 345 mysqld on |
或用这个命令设置开机启动 | chkconfig mysqld on |
如果提示pid错误,重启一下系统 | service mysqld start |
service mysqld restart |
|
service mysqld stop |
修改root密码
新设密码 | /usr/local/mysql/bin/mysqladmin -u root password "123456" |
修改密码 | /usr/local/mysql/bin/mysqladmin -uroot -p123456 password "1234567" |
其他命令
查看mysqld进程 | ps -ef | grep mysql |
查看mysqld进程详情,包括正在运行的服务配置文件情况 | ps aux|grep mysqld |
自定义配置参数启动mysqld | ./mysqld --defaults-file=../my.cnf |
开启firewalld3306tcp端口例外 | firewall-cmd --permanent --zone=public --add-port=3306/tcp |
6.安装pcre-devel
pcre-devel-8.32-14.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/pcre-devel-8.32-14.el7.x86_64.rpm |
rpm -ivh pcre-devel-8.32-14.el7.x86_64.rpm |
ok.
7.安装zlib-devel
zlib-devel-1.2.7-13.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/zlib-devel-1.2.7-13.el7.x86_64.rpm |
rpm -ivh zlib-devel-1.2.7-13.el7.x86_64.rpm |
ok.
8.安装openssl
openssl-1.0.1e-42.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/openssl-1.0.1e-42.el7.x86_64.rpm |
keyutils-libs-devel-1.5.8-3.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/keyutils-libs-devel-1.5.8-3.el7.x86_64.rpm |
libcom_err-devel-1.42.9-7.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/libcom_err-devel-1.42.9-7.el7.x86_64.rpm |
libsepol-devel-2.1.9-3.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/libsepol-devel-2.1.9-3.el7.x86_64.rpm |
pkgconfig-0.27.1-4.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/pkgconfig-0.27.1-4.el7.x86_64.rpm |
libselinux-devel-2.2.2-6.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/libselinux-devel-2.2.2-6.el7.x86_64.rpm |
libverto-devel-0.2.5-4.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/libverto-devel-0.2.5-4.el7.x86_64.rpm |
krb5-devel-1.12.2-14.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/krb5-devel-1.12.2-14.el7.x86_64.rpm |
openssl-devel-1.0.1e-42.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/openssl-devel-1.0.1e-42.el7.x86_64.rpm |
rpm -ivh openssl-1.0.1e-42.el7.x86_64.rpm |
rpm -ivh keyutils-libs-devel-1.5.8-3.el7.x86_64.rpm |
rpm -ivh libcom_err-devel-1.42.9-7.el7.x86_64.rpm |
rpm -ivh libsepol-devel-2.1.9-3.el7.x86_64.rpm |
rpm -ivh pkgconfig-0.27.1-4.el7.x86_64.rpm |
rpm -ivh libselinux-devel-2.2.2-6.el7.x86_64.rpm |
rpm -ivh libverto-devel-0.2.5-4.el7.x86_64.rpm |
rpm -ivh krb5-devel-1.12.2-14.el7.x86_64.rpm |
rpm -ivh openssl-devel-1.0.1e-42.el7.x86_64.rpm |
9.安装nginx,下载gz包
nginx-1.9.9.tar.gz | http://nginx.org/download/nginx-1.9.9.tar.gz |
创建nginx用户和组
groupadd -r nginx |
useradd -s /sbin/nologin -g nginx -r nginx |
id nginx |
解压,编译
tar -zxvf nginx-1.9.9.tar.gz |
cd nginx-1.9.9 |
配置
./configure --with-http_stub_status_module --with-http_ssl_module --user=nginx --group=nginx |
配置结束后会列出配置摘要,按照上面安装的组件和配置参数,摘要应该是这样的
Configuration summary nginx path prefix: "/usr/local/nginx" |
编译,安装
make |
make install |
编辑pid文件
打开pid文件 |
vi /usr/local/nginx/logs/nginx.pid |
随机设置一个pid值 | 5692 |
编辑nginx全局配置文件 |
vi /usr/local/nginx/conf/nginx.conf |
开启启动pid,路径是上面创建的pid文件 | pid /usr/local/nginx/logs/nginx.pid; |
启动/重启/停止服务命令
/usr/local/nginx/sbin/nginx |
/usr/local/nginx/sbin/nginx -s reload |
/usr/local/nginx/sbin/nginx -s stop |
创建开机启动项
centOS7之后的启动方式 |
|
CentOS 7的服务systemctl脚本存放在:/usr/lib/systemd/,有系统(system)和用户(user)之分,像需要开机不登陆就能运行的程序,还是存在系统服务里吧,即:/usr/lib/systemd/system目录下 每一个服务以.service结尾,一般会分为3部分:[Unit]、[Service]和[Install] 这里创建一个mysql.service服务 |
vi /usr/lib/systemd/system/nginx.service |
编辑nginx.service | [Unit] Description=nginx After=network.target [Service] Type=forking PIDFile=/usr/local/nginx/logs/nginx.pid 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 enable nginx.service |
添加防火墙允许http服务
firewall-cmd --permanent --zone=public --add-service=http |
systemctl restart firewalld |
10.安装libxml2-devel
xz-devel-5.1.2-9alpha.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/xz-devel-5.1.2-9alpha.el7.x86_64.rpm |
libxml2-devel-2.9.1-5.el7_0.1.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/libxml2-devel-2.9.1-5.el7_0.1.x86_64.rpm |
rpm -ivh xz-devel-5.1.2-9alpha.el7.x86_64.rpm |
rpm -ivh libxml2-devel-2.9.1-5.el7_0.1.x86_64.rpm |
11.安装bzip2 bzip2-devel
bzip2-1.0.6-12.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/bzip2-1.0.6-12.el7.x86_64.rpm |
bzip2-devel-1.0.6-12.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/bzip2-devel-1.0.6-12.el7.x86_64.rpm |
rpm -ivh bzip2-1.0.6-12.el7.x86_64.rpm |
rpm -ivh bzip2-devel-1.0.6-12.el7.x86_64.rpm |
12.安装curl-devel
libcurl-devel-7.29.0-19.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/libcurl-devel-7.29.0-19.el7.x86_64.rpm |
rpm -ivh libcurl-devel-7.29.0-19.el7.x86_64.rpm |
13.安装readline-devel
readline-devel-6.2-9.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/readline-devel-6.2-9.el7.x86_64.rpm |
rpm -ivh readline-devel-6.2-9.el7.x86_64.rpm |
14.安装freetype freetype-devel
freetype-2.4.11-9.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/freetype-2.4.11-9.el7.x86_64.rpm |
freetype-devel-2.4.11-9.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/freetype-devel-2.4.11-9.el7.x86_64.rpm |
rpm -ivh freetype-2.4.11-9.el7.x86_64.rpm |
rpm -ivh freetype-devel-2.4.11-9.el7.x86_64.rpm |
15.安装libjpeg-turbo libpng libjpeg-turbo-devel libpng-devel
libjpeg-turbo-1.2.90-5.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/libjpeg-turbo-1.2.90-5.el7.x86_64.rpm |
libjpeg-turbo-devel-1.2.90-5.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/libjpeg-turbo-devel-1.2.90-5.el7.x86_64.rpm |
libpng-1.5.13-5.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/libpng-1.5.13-5.el7.x86_64.rpm |
libpng-devel-1.5.13-5.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/libpng-devel-1.5.13-5.el7.x86_64.rpm |
rpm -ivh libjpeg-turbo-1.2.90-5.el7.x86_64.rpm |
rpm -ivh libjpeg-turbo-devel-1.2.90-5.el7.x86_64.rpm |
rpm -ivh libpng-1.5.13-5.el7.x86_64.rpm |
rpm -ivh libpng-devel-1.5.13-5.el7.x86_64.rpm |
16.安装openldap openldap-devel
openldap-2.4.39-6.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/openldap-2.4.39-6.el7.x86_64.rpm |
cyrus-sasl-2.1.26-17.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/cyrus-sasl-2.1.26-17.el7.x86_64.rpm |
cyrus-sasl-devel-2.1.26-17.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/cyrus-sasl-devel-2.1.26-17.el7.x86_64.rpm |
openldap-devel-2.4.39-6.el7.x86_64.rpm | http://vault.centos.org/7.1.1503/os/x86_64/Packages/openldap-devel-2.4.39-6.el7.x86_64.rpm |
rpm -ivh openldap-2.4.39-6.el7.x86_64.rpm |
rpm -ivh cyrus-sasl-2.1.26-17.el7.x86_64.rpm |
rpm -ivh cyrus-sasl-devel-2.1.26-17.el7.x86_64.rpm |
rpm -ivh openldap-devel-2.4.39-6.el7.x86_64.rpm |
17.安装libmcrypt,下载gz包
libmcrypt-2.5.7.tar.gz | ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/libmcrypt/libmcrypt-2.5.7.tar.gz |
tar -zxvf libmcrypt-2.5.7.tar.gz |
cd libmcrypt-2.5.7 |
./configure |
make |
make install |
18.安装PHP-FPM,下载gz包
php-7.0.1.tar.gz | http://cn2.php.net/distributions/php-7.0.1.tar.gz |
为了编译程序能够找到相关依赖类库,必须编辑一下类库识别路径
vi /etc/ld.so.conf.d/local.conf |
|
添加该行(32位),注意,如果是64位系统继续添加下一句 | /usr/local/lib |
添加该行(64位,32位系统不需要) | /usr/local/lib64 |
:wq | |
使之生效 | ldconfig -v |
解压
tar -zxvf php-7.0.1.tar.gz |
cd php-7.0.1 |
配置,可参考官方文档相关配置项说明:http://php.net/manual/zh/configure.about.php
./configure --prefix=/usr/local/php --exec-prefix=/usr/local/php --bindir=/usr/local/php/bin --sbindir=/usr/local/php/sbin --includedir=/usr/local/php/include --libdir=/usr/local/php/lib/php --mandir=/usr/local/php/php/man --with-config-file-path=/usr/local/php/etc --with-mysql-sock=/var/run/mysql/mysql.sock --with-mcrypt=/usr/include --with-mhash --with-openssl --with-mysql=shared,mysqlnd --with-mysqli=shared,mysqlnd --with-pdo-mysql=shared,mysqlnd --with-gd --with-iconv --with-zlib --enable-zip --enable-inline-optimization --disable-debug --disable-rpath --enable-shared --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-mbregex --enable-mbstring --enable-ftp --enable-gd-native-ttf --enable-pcntl --enable-sockets --with-xmlrpc --enable-soap --without-pear --with-gettext --enable-session --with-curl --with-jpeg-dir --with-freetype-dir --enable-opcache --enable-fpm --enable-fastcgi --with-fpm-user=nginx --with-fpm-group=nginx --without-gdbm --disable-fileinfo |
编译,安装
make |
make install |
安装成功后,如果没有自定义过目录,常用配置用到的默认目录如下
/usr/local/php/sbin/php-fpm |
/usr/local/php/etc/php-fpm.conf.defualt |
/usr/local/php/etc/php.ini |
加载配置项
复制php-fpm配置模板 |
cp php-fpm.conf.default php-fpm.conf |
cd php-fpm.d |
|
复制www配置模板 |
cp www.conf.default www.conf |
编辑php-fpm配置 |
vi /usr/local/php/etc/php-fpm.conf |
开启pid固定参数文件,以便下面的启动参数有效 | pid = /usr/local/php/var/run/php-fpm.pid |
开启错误日志文件 | error_log = log/php-fpm.log |
启动参数
测试php-fpm配置命令 | /usr/local/php/sbin/php-fpm -t |
测试php-fpm配置,配合php.ini | /usr/local/php/sbin/php-fpm -c /usr/local/php/etc/php.ini -y /usr/local/php/etc/php-fpm.conf -t |
启动php-fpm | /usr/local/php/sbin/php-fpm |
启动php-fpm,配合php.ini | /usr/local/php/sbin/php-fpm -c /usr/local/php/etc/php.ini -y /usr/local/php/etc/php-fpm.conf |
关闭php-fpm | kill -INT `cat /usr/local/php/var/run/php-fpm.pid` |
重启php-fpm | kill -USR2 `cat /usr/local/php/var/run/php-fpm.pid` |
修改nginx-server的fastcgi部分,参考下面常见配置
|
支持pathinfo的配置
|
创建php.ini在编译时指定的配置项文件夹内,例如这次的安装配置路径是在/usr/local/php/etc/下,重启后会生效
vi /usr/local/php/etc/php.ini |
常用php.ini配置项解析
开启PDO,否则使用不到PDO对象 | extension = pdo.so |
开启MySQL PDO驱动,PDO默认只支持SQLite | extension = pdo_mysql.so |
开启MySQLi | extension = mysqli.so |
开启MySQL | extension = mysql.so |
设置时区 | date.timezone = 'Asia/Shanghai' |
设置MySQL socket文件位置,否则不能通过uinx socket来连接数据库,例如利用主机名字localhost将会失效 | mysql.default_socket = /var/lib/mysql/mysql.sock |
设置PDO MySQL socket文件位置,否则不能通过uinx socket来连接数据库,例如利用主机名字localhost将会失效 | pdo_mysql.default_socket = /var/lib/mysql/mysql.sock |
设置MySQLi socket文件位置,否则不能通过uinx socket来连接数据库,例如利用主机名字localhost将会失效 | mysqli.default_socket = /var/lib/mysql/mysql.sock |
创建开机启动项
centOS7之后的启动方式 |
|
CentOS 7的服务systemctl脚本存放在:/usr/lib/systemd/,有系统(system)和用户(user)之分,像需要开机不登陆就能运行的程序,还是存在系统服务里吧,即:/usr/lib/systemd/system目录下 每一个服务以.service结尾,一般会分为3部分:[Unit]、[Service]和[Install] 这里创建一个mysql.service服务 |
vi /usr/lib/systemd/system/php-fpm.service |
编辑php-fpm.service | [Unit] Description=php-fpm After=network.target [Service] Type=forking PIDFile=/usr/local/php/var/run/php-fpm.pid ExecStart=/usr/local/php/sbin/php-fpm ExecReload=kill -USR2 `cat /usr/local/php/var/run/php-fpm.pid` ExecStop=kill -INT `cat /usr/local/php/var/run/php-fpm.pid` PrivateTmp=true [Install] WantedBy=multi-user.target |
开启开机加载 | systemctl enable php-fpm.service |