CentOS下安装PHP7+Nginx+MySQL的方法详解-PHP7

资源魔 41 0

本文以centos6为例。饬令局部均省略sudo饬令。

装置PHP

下载

http://cn2.php.net/distributions/php-5.6.22.tar.bz2
http://cn2.php.net/distributions/php-7.0.7.tar.bz2

更新yum源

这里将Centos的yum源改换为国际的阿里云源。yum装置失常的能够跳过本步骤。

阿里云Linux装置镜像源地点:

http://mirrors.aliyun.com/

一、备份你的原镜像文件,以避免犯错后能够规复:

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

二、下载新的CentOS-Base.repo 到/etc/yum.repos.d/

## CentOS 5
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-5.repo
## CentOS 6
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
## CentOS 7
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

三、天生缓存

yum clean all
yum makecache

装置依赖

yum install -y gcc gcc-c++ make cmake bison autoconf wget lrzsz
yum install -y libtool libtool-ltdl-devel 
yum install -y freetype-devel libjpeg.x86_64 libjpeg-devel libpng-devel gd-devel
yum install -y python-devel  patch  sudo 
yum install -y openssl* openssl openssl-devel ncurses-devel
yum install -y bzip* bzip2 unzip zlib-devel
yum install -y libevent*
yum install -y libxml* libxml2-devel
yum install -y libcurl* curl-devel 
yum install -y readline-devel

需求编译libmcrypt、mhash、mcrypt库

tar zxvf /libmcrypt-2.5.8.tar.gz \
&& cd /libmcrypt-2.5.8 && ./configure && make && make install && cd - / && rm -rf /libmcrypt* \
&& tar zxvf /mhash-0.9.9.9.tar.gz && cd mhash-0.9.9.9 && ./configure && make && make install && cd - / && rm -rf /mhash* \
&& tar zxvf /mcrypt-2.6.8.tar.gz && cd mcrypt-2.6.8 && LD_LIBRARY_PATH=/usr/local/lib ./configure && make && make install && cd - / && rm -rf /mcrypt*

开端装置

应用./configure --help查看编译支持的选项。假如写了没有支持的选项,如php7里没有支持--with-mysql=mysqlnd会提醒:

configure: WARNING: unrecognized options: --with-mysql
wget http://cn2.php.net/distributions/php-7.0.7.tar.bz2
tar jxvf php-7.0.7.tar.bz2 
cd php-7.0.7
$ ./configure --prefix=/usr/local/php --with-config-file-scan-dir=/usr/local/php/etc/ --enable-inline-optimization --enable-opcache --enable-session --enable-fpm --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-pdo-sqlite --with-sqlite3 --with-gettext --enable-mbregex --enable-mbstring --enable-xml --with-iconv --with-mcrypt --with-mhash --with-openssl --enable-bcmath --enable-soap --with-xmlrpc --with-libxml-dir --enable-pcntl --enable-shmop --enable-sysvmsg --enable-sysvsem --enable-sysvshm --enable-sockets --with-curl --with-curlwrappers --with-zlib --enable-zip --with-bz2 --with-gd --enable-gd-native-ttf --with-jpeg-dir --with-png-dir --with-freetype-dir --with-iconv-dir --with-readline
 
$ make
$ make install

可选项:

--with-fpm-user=www --with-fpm-group=www

这外面开启了不少扩大。假如这时候候忘了开启,当前还能加之吗?谜底是能够的。当前只要要进入源码的ext目次,例如忘了pdo_mysql,进入ext/pdo_mysql,应用phpize对象,像装置一般扩大同样便可天生pdo_mysql.so。

对于:--enable-safe-mode

开启的话php能够执行一下零碎函数,倡议封闭(可搜寻受此函数影响的php函数)

#假如只要要设置装备摆设某一个目次能够执行则 设置为on并指定 safe_mode_exec_dir=string目次来执行零碎函数。
#本特点已自 PHP 5.3.0 起烧毁并将自 PHP 5.4.0 起移除了。
safe_mode = off

php7编译不必加这个设置装备摆设。

编译比拟耗内存以及CPU。期待半小时阁下,编译实现:

Build complete.
Don't forget to run 'make test'.
Installing shared extensions:     /usr/local/php/lib/php/extensions/no-debug-non-zts-20151012/
Installing PHP CLI binary:        /usr/local/php/bin/
Installing PHP CLI man page:      /usr/local/php/php/man/man1/
Installing PHP FPM binary:        /usr/local/php/sbin/
Installing PHP FPM config:        /usr/local/php/etc/
Installing PHP FPM man page:      /usr/local/php/php/man/man8/
Installing PHP FPM status page:   /usr/local/php/php/php/fpm/
Installing phpdbg binary:         /usr/local/php/bin/
Installing phpdbg man page:       /usr/local/php/php/man/man1/
Installing PHP CGI binary:        /usr/local/php/bin/
Installing PHP CGI man page:      /usr/local/php/php/man/man1/
Installing build environment:     /usr/local/php/lib/php/build/
Installing header files:           /usr/local/php/include/php/
Installing helper programs:       /usr/local/php/bin/
  program: phpize
  program: php-config
Installing man pages:             /usr/local/php/php/man/man1/
  page: phpize.1
  page: php-config.1
Installing PEAR environment:      /usr/local/php/lib/php/
[PEAR] Archive_Tar    - installed: 1.4.0
[PEAR] Console_Getopt - installed: 1.4.1
[PEAR] Structures_Graph- installed: 1.1.1
[PEAR] XML_Util       - installed: 1.3.0
[PEAR] PEAR           - installed: 1.10.1
Wrote PEAR system config file at: /usr/local/php/etc/pear.conf
You may want to add: /usr/local/php/lib/php to your php.ini include_path
/php-7.0.7/build/shtool install -c ext/phar/phar.phar /usr/local/php/bin
ln -s -f phar.phar /usr/local/php/bin/phar
Installing PDO headers:           /usr/local/php/include/php/ext/pdo/
[root@e8ed9b00e80c php-7.0.7]# /usr/local/php/bin/php -m
[PHP Modules]
bcmath
bz2
Core
ctype
curl
date
dom
fileinfo
filter
gd
gettext
hash
iconv
json
libxml
mbstring
mcrypt
mysqli
mysqlnd
openssl
pcntl
pcre
PDO
pdo_mysql
pdo_sqlite
Phar
posix
readline
Reflection
session
shmop
SimpleXML
soap
sockets
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tokenizer
xml
xmlreader
xmlrpc
xmlwriter
zip
zlib
[Zend Modules]

设置装备摆设文件

需求从装置包里复制php.ini、php-fpm.conf到装置目次:

$ cp php-7.0.7/php.ini* /usr/local/php/etc/
$ cd /usr/local/php/etc/
$ cp php.ini-production php.ini
$ cp php-fpm.conf.default  php-fpm.conf
$ cp php-fpm.d/www.conf.default php-fpm.d/www.conf
$ ls
pear.conf  php-fpm.conf.default  php.ini-development  php.ini-production

设置装备摆设php.ini

# 没有显示谬误,默许
display_errors = Off
# 正在封闭display_errors后开启PHP谬误日记(门路正在php-fpm.conf中设置装备摆设),默许
log_errors = On
# 字符集,默许
default_charset = "UTF-8"
# 文件上传巨细,默许值过小,倡议修正10M
upload_max_filesize = 2M
# Maximum size of POST data that PHP will accept.  表单最年夜值,默许是8M,假如表单含有多图上传,巨细可能不敷。超越该巨细后盾收没有到 表复数据
post_max_size = 8M  
# 设置PHP的扩大库门路,,默许被正文了。
extension_dir = "/usr/local/php7/lib/php/extensions/no-debug-non-zts-20151012/"
# 假如没有设置extension_dir,也能够间接写相对地位:
# extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20151012/redis.so
# 设置PHP的时区
date.timezone = PRC
# 开启opcache,默许是0
[opcache]
; Determines if Zend OPCache is enabled
opcache.enable=1

设置装备摆设php-fpm.conf

; 去掉里分号,不便当前重启。倡议修正
; Default Value: none
; 上面的值终极目次是/usr/local/php/var/run/php-fpm.pid
; 开启后能够滑润圆滑重启php-fpm
pid = run/php-fpm.pid
; 设置谬误日记的门路,能够默许值
; Note: the default prefix is /usr/local/php/var
; Default Value: log/php-fpm.log, 即/usr/local/php/var/log/php-fpm.log
error_log = /var/log/php-fpm/error.log
; Log等级,能够默许值
; Possible Values: alert, error, warning, notice, debug
; Default Value: notice
log_level = notice
; 后盾运转,默许yes,能够默许值
; Default Value: yes
;daemonize = yes
; 引入www.conf文件中的设置装备摆设,能够默许值
include=/usr/local/php/etc/php-fpm.d/*.conf

设置装备摆设www.conf(正在php-fpm.d目次下)

www.conf这是php-fpm过程效劳的扩大设置装备摆设文件:

; 设置用户以及用户组,默许都是nobody。能够默许值
user = nginx
group = nginx
; 设置PHP监听
; 上面是默许值,没有倡议应用。能够默许值
; listen = 127.0.0.1:9000
; 依据nginx.conf中的设置装备摆设fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
listen = /var/run/php-fpm/php-fpm.sock
######开启慢日记。能够默许值
slowlog = /var/log/php-fpm/$pool-slow.log
request_slowlog_timeout = 10s

保留设置装备摆设文件后,测验设置装备摆设能否正确的办法为:

/usr/local/php/sbin/php-fpm -t

假如呈现诸如 test is successful 字样,阐明设置装备摆设不成绩。另外该饬令也能够让咱们晓得php-fpm的设置装备摆设文件正在哪。

建设软衔接:

ln -sf /usr/local/php/sbin/php-fpm /usr/bin/
ln -sf /usr/local/php/bin/php /usr/bin/
ln -sf /usr/local/php/bin/phpize /usr/bin/
ln -sf /usr/local/php/bin/php-config /usr/bin/
ln -sf /usr/local/php/bin/php-cig /usr/bin/

或许将php编译天生的bin目次增加到以后Linux零碎的环境变量中:

echo -e '\nexport PATH=/usr/local/php/bin:/usr/local/php/sbin:$PATH\n' >> /etc/profile && source /etc/profile

启动php-fpm

/usr/local/php/sbin/php-fpm

假如提醒不www用户(www.conf里填写了www而没有是nobody),则新增:

useradd www
chown -R www:www /www

检测能否启动:

ps aux |grep php-fpm # 另外该饬令也能够让咱们晓得fpm的设置装备摆设文件正在哪。
netstat -ant |grep 9000

查看php-fpm过程数:

ps aux | grep -c php-fpm

php-fpm操作汇总:

/usr/local/php/sbin/php-fpm         # 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`         #php-fpm滑润圆滑重启

重启办法二:

killall php-fpm
/usr/local/php/sbin/php-fpm &

假如无奈滑润圆滑启动,那就终止过程id:

ps aux | grep php-fpm
kill -9  1210  #1210指php-fpm过程id

装置Nginx

nginx news
http://nginx.org/
http://nginx.org/download/nginx-1.11.1.tar.gz

依赖:

# 为了支持rewrite性能,咱们需求装置pcre
yum install pcre-devel
# 需求ssl的支持,假如没有需求ssl支持,请跳过这一步
# yum install openssl*
# gzip 类库装置,按需装置
# yum install zlib zlib-devel

设置装备摆设编译参数

$ tar -zxvf nginx-1.11.1.tar.gz
$ cd nginx-1.11.1
$ ./configure \
    --prefix=/usr/local/nginx \
    --with-http_stub_status_module  \
    --with-http_ssl_module \
    --with-http_realip_module \
    --with-http_sub_module \
    --with-http_gzip_static_module \
    --with-pcre

设置装备摆设ok:

Configuration su妹妹ary
  + using system PCRE library
  + using system OpenSSL library
  + md5: using OpenSSL library
  + sha1: using OpenSSL library
  + using system zlib library
  nginx path prefix: "/usr/local/nginx"
  nginx binary file: "/usr/local/nginx/sbin/nginx"
  nginx modules path: "/usr/local/nginx/modules"
  nginx configuration prefix: "/usr/local/nginx/conf"
  nginx configuration file: "/usr/local/nginx/conf/nginx.conf"
  nginx pid file: "/usr/local/nginx/logs/nginx.pid"
  nginx error log file: "/usr/local/nginx/logs/error.log"
  nginx http access log file: "/usr/local/nginx/logs/access.log"
  nginx http client request body temporary files: "client_body_temp"
  nginx http proxy temporary files: "proxy_temp"
  nginx http fastcgi temporary files: "fastcgi_temp"
  nginx http uwsgi temporary files: "uwsgi_temp"
  nginx http scgi temporary files: "scgi_temp"

编译装置nginx

make
make install

设置软衔接:

ln -sf /usr/local/nginx/sbin/nginx /usr/sbin

检测nginx:

nginx -t

显示:

nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

胜利了。咱们从新设置装备摆设下nginx.conf:

#user  nobody;
worker_processes  1;
#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;
#pid        logs/nginx.pid;
events {
    worker_connections  1024;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    
    # 处理虚构主机名字太长 http://www.jb51.net/article/26412.htm
    server_names_hash_bucket_size 128; 
    #log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
    #                  '$status $body_bytes_sent "$http_referer" '
    #                  '"$http_user_agent" "$http_x_forwarded_for"';
    #access_log  logs/access.log  main;
    sendfile        on;
    #tcp_nopush     on;
    #keepalive_timeout  0;
    keepalive_timeout  65;
    #gzip  on;
    
    autoindex on;# 显示目次
    autoindex_exact_size on;# 显示文件巨细
    autoindex_localtime on;# 显示文件工夫
    
    include vhosts/*.conf;
}

设置装备摆设localhost:

vhosts/localhost.conf
server {
    listen       80;
    server_name  localhost;
    #charset utf-8;
    #access_log  logs/host.access.log  main;
    location / {
        root   /www/www/;
        index  index.php index.html index.htm;
    }
    #error_page  404              /404.html;
    # redirect server error pages to the static page /50x.html
    #
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   html;
    }
    # proxy the PHP scripts to Apache listening on 127.0.0.1:80
    #
    #location ~ \.php$ {
    #    proxy_pass   http://127.0.0.1;
    #}
    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    location ~ \.php$ {
        root           /www/www/;
        fastcgi_pass   127.0.0.1:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include        fastcgi_params;
    }
}

启动nginx:

/usr/local/nginx/sbin/nginx
# 或许
nginx

重启:

/usr/local/nginx/sbin/nginx -s reload
# 或许
nginx -s reload

中止:

/usr/local/nginx/sbin/nginx -s stop
# 或许
nginx -s stop

假如提醒80端口被占用了,能够应用ps aunx | grep 80查看。普通是apache占用了。能够应用:

chkconfig --list
chkconfig nginx on
service apache off

制止apache启动并封闭apache效劳。

装置扩大

装置swoole

Swoole: PHP的异步、并行、高功能网络通讯引擎

http://www.swoole.com/

wget https://github.com/swoole/swoole-src/archive/swoole-1.8.5-stable.zip
unzip swoole-1.8.5-stable.zip
cd swoole-1.8.5-stable
phpize
./configure
make && make install

装置redis

效劳器端:

http://download.redis.io/releases/redis-3.2.0.tar.gz

$ wget http://download.redis.io/releases/redis-3.2.0.tar.gz
$ tar xzf redis-3.2.0.tar.gz
$ cd redis-3.2.0
$ make

默许编译完后正在以后目次的src目次下。能够复制可执行文件到其余中央:

mkdir /usr/local/redis
cd src
cp  redis-benchmark redis-check-aof redis-check-rdb redis-cli redis-sentinel redis-server redis-trib.rb /usr/local/redis

复制设置装备摆设文件

$ cd redis-3.2.0
$ cp redis.conf /usr/local/redis/

或许装置的时分指定地位:

make PREFIX=/usr/local/redis install

将Redis的饬令所正在目次增加到零碎参数PATH中:

修正profile文件:

vi /etc/profile

正在最初行追加:

export PATH="$PATH:/usr/local/redis/bin"

而后即刻使用这个文件:

. /etc/profile

这样就能够间接挪用redis-cli的饬令了

客户端:

2.0装置

wget https://github.com/nicolasff/phpredis/archive/2.2.4.tar.gz
tar -zxvf 2.2.4
cd phpredis-2.2.4/
phpize
./configure 
make && make install

3.0装置

phpredis/phpredis: A PHP extension for Redis
https://github.com/phpredis/phpredis

需求先装置igbinary:

PECL :: Package :: igbinary

http://pecl.php.net/package/igbinary

wget http://pecl.php.net/get/igbinary-1.2.1.tgz
tar zxvf igbinary-1.2.1.tgz
cd igbinary-1.2.1
phpize
./configure 
make && make install
wget https://github.com/phpredis/phpredis/archive/3.0.0-rc1.zip
unzip 3.0.0-rc1
cd phpredis-3.0.0-rc1/
phpize
./configure [--enable-redis-igbinary]
make && make install

装置memcache

pecl install memcache

php7装置有兼容成绩,从github上搜到了一个可用的:

git clone https://github.com/websupport-sk/pecl-memcache memcache
cd memcache
phpize
./confihure
make
make install

装置memcached:

pecl install memcached

需求先装置:

yum install libmemcached-dev

应用yum/apt-get装置php

假如只是想疾速搭建开发环境,能够应用yum进行装置:

yum install php-cli php-devel php-co妹妹on php-pear  php-gd php-fpm php-mbstring php-mcrypt php-mysql php-sqlite3 php-pdo php-memcache

应用yum search php能够查问到能够装置哪些php相干的扩大。

假如是ubuntu:

sudo apt-get install php7.0-cli php7.0-dev php-pear php7.0-co妹妹on  php7.0-pdo php7.0-curl php7.0-gd php-redis php-xdebug php-memcache php7.0-fpm  composer

需求下载 15.9 MB 的归档。

解紧缩后会耗费 57.7 MB 的额定空间。

您心愿持续执行吗? [Y/n]

php-pear蕴含pecl,php-dev蕴含phpize,pecl依赖phpize。

需求留意的是,应用yum装置的php,其设置装备摆设文件位于:

/etc/php.ini
/etc/php-fpm.conf
/etc/php-fpm.d/www.conf
/etc/php.d/mysqli.ini
/etc/php.d/pdo.ini

ubuntu与centos纷歧样,会离开寄存php.ini到/etc/php7/cli/php.ini以及/etc/php7/fpm/php.ini里。这个需求留意。

yum无奈装置的扩大,能够应用pecl装置。因为pecl是需求编译的,以是需求先装置编译器:

yum install -y gcc gcc-c++ make cmake bison autoconf

而后:

pecl install swoole
pecl install redis

pecl装置扩大实现后会提醒增加so文件到php.ini。示例:

Build process completed successfully
Installing '/usr/lib64/php/modules/swoole.so'
install ok: channel://pecl.php.net/swoole-1.9.11
configuration option "php_ini" is not set to php.ini location
You should add "extension=swoole.so" to php.ini

增加示例:

[swoole]
extension = /usr/lib64/php/modules/swoole.so

应用php -m能够查看装置的扩大。

旌旗灯号治理

没有重载设置装备摆设启动新/旧工作过程

kill -HUP 旧/新版主过程号

沉着封闭旧/新过程

kill -QUIT 旧/新主过程号

假如此时报错,提醒另有过程不完结就用上面饬令先封闭旧/新工作过程,再封闭主过程号:

kill -TERM 旧/新工作过程号

晋级、增加或删除了模块时,咱们需求停掉效劳器

kill -USR2 旧版顺序的主过程号或过程文件名

MySQL

假如存正在旧版本,需求先卸载旧版本。

应用上面的饬令反省能否装置有MySQL Server

rpm -qa | grep mysql

有的话经过上面的饬令来卸载掉

rpm -e mysql   //一般删除了模式
rpm -e --nodeps mysql    // 强力删除了模式,假如应用下面饬令删除了时,提醒有依赖的其它文件,则用该饬令能够对其进行强力删除了

装置

装置编译代码需求的包

yum -y install make gcc-c++ cmake bison-devel  ncurses-devel

下载MySQL 5.6.14:

wget http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.14.tar.gz
tar xvf mysql-5.6.14.tar.gz
cd mysql-5.6.14

编译装置

cmake \
-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \
-DMYSQL_DATADIR=/usr/local/mysql/data \
-DSYSCONFDIR=/etc \
-DWITH_MYISAM_STORAGE_ENGINE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_MEMORY_STORAGE_ENGINE=1 \
-DWITH_READLINE=1 \
-DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \
-DMYSQL_TCP_PORT=3306 \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_PARTITION_STORAGE_ENGINE=1 \
-DEXTRA_CHARSETS=all \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci\
-DMYSQL_USER=mysql
make && make install

编译的参数能够参考

http://dev.mysql.com/doc/refman/5.5/en/source-configuration-options.html

整个进程需求30分钟阁下……漫长的期待

设置装备摆设MySQL

设置权限

应用上面的饬令查看能否有mysql用户及用户组

cat /etc/passwd 查看用户列表
cat /etc/group  查看用户组列表

假如不就创立

groupadd mysql
useradd -g mysql mysql

修正/usr/local/mysql权限

chown -R mysql:mysql /usr/local/mysql

修正/usr/local/mysql权限

初始化设置装备摆设

进入装置门路

cd /usr/local/mysql

进入装置门路,执行初始化设置装备摆设剧本,创立零碎自带的数据库以及表

scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql

注:正在启动MySQL效劳时,会依照肯定秩序搜寻my.cnf,先正在/etc目次下找,找没有到则会搜寻"$basedir/my.cnf",正在本例中就是 /usr/local/mysql/my.cnf,这是新版MySQL的设置装备摆设文件的默许地位!

留意:正在CentOS 6.4版操作零碎的最小装置实现后,正在/etc目次下会存正在一个my.cnf,需求将此文件改名为其余的名字,如:/etc/my.cnf.bak,不然,该文件会滋扰源码装置的MySQL的正确设置装备摆设,造成无奈启动。

正在应用"yum update"更新零碎后,需求反省下/etc目次下能否会多出一个my.cnf,假如多出,将它重定名成此外。不然,MySQL将应用这个设置装备摆设文件启动,可能造成无奈失常启动等成绩。

启动MySQL

增加效劳,拷贝效劳剧本到init.d目次,并设置开机启动

cp support-files/mysql.server /etc/init.d/mysql
chkconfig mysql on
service mysql start  --启动MySQL

设置装备摆设用户

MySQL启动胜利后,root默许不明码,咱们需求设置root明码。

设置以前,咱们需求先设置PATH,要没有不克不及间接挪用mysql

修正/etc/profile文件,正在文件末尾增加

PATH=/usr/local/mysql/bin:$PATH
export PATH

封闭文件,运转上面的饬令,让设置装备摆设立刻失效

source /etc/profile

如今,咱们能够正在终端内间接输出mysql进入,mysql的环境了

执行上面的饬令修正root明码

mysql -uroot  
mysql> SET PASSWORD = PASSWORD('123456');

若要设置root用户能够近程拜访,执行

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'172.16.%' IDENTIFIED BY 'password' WITH GRANT OPTION;

白色的password为近程拜访时,root用户的明码,能够以及内陆没有同。

设置装备摆设防火墙

防火墙的3306端口默许不开启,若要近程拜访,需求开启这个端口

关上/etc/sysconfig/iptables

正在“-A INPUT –m state --state NEW –m tcp –p –dport 22 –j ACCEPT”,下增加:

-A INPUT -m state --state NEW -m tcp -p -dport 3306 -j ACCEPT

而后保留,并封闭该文件,正在终端内运转上面的饬令,刷新防火墙设置装备摆设:

service iptables restart

OK,所有设置装备摆设终了,你能够拜访你的MySQL了~

留意:

CentOS 7中默许应用Firewalld做防火墙,以是修正iptables后,正在重启零碎后,基本不论用。

Firewalld中增加端口办法以下:

firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload

常见成绩

一、编译PHP提醒easy.h should be in <curl-dir>/include/curl/

假如是centos:

yum install curl curl-devel

假如是ubuntu:

apt-get install libcurl4-gnutls-dev

假如仍是不处理,间接编译curl:

wget http://curl.haxx.se/download/curl-7.37.0.tar.gz
tar zxvf curl-7.37.0.tar.gz
cd curl-7.37.0.
./configure --prefix=/usr/local --enable-shared 
make
make install

以上就是CentOS下装置PHP7+Nginx+MySQL的办法详解的具体内容,更多请存眷资源魔其它相干文章!

标签: Centos php7开发教程 php7开发资料 php7开发自学

抱歉,评论功能暂时关闭!