この記事では、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ソースを国内のAlibaba Cloudソースに置き換えます。 。 yum のインストールが正常に完了した場合は、この手順を省略できます。
Alibaba Cloud Linux インストール イメージ ソース アドレス:
http://mirrors.aliyun.com/
1. エラー後の回復を避けるために、元のイメージ ファイルをバックアップします:
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
2 、新しい 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
3 にダウンロードします。キャッシュを生成します
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 関数を検索できます) function)
#如果只需要配置某一个目录可以执行则 设置为on并指定 safe_mode_exec_dir=string目录来执行系统函数。 #本特性已自 PHP 5.3.0 起废弃并将自 PHP 5.4.0 起移除。 safe_mode = off
php7 をコンパイルするときにこの設定を追加する必要はありません。
コンパイルではより多くのメモリと CPU が消費されます。コンパイルが完了するまで約 30 分待ちます:
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
Configuration 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
Configure 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
Configure 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
If のような単語「test is success」と表示される場合は、設定に問題がないことを意味します。さらに、このコマンドは 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
Start php-fpm
/usr/local/php/sbin/php-fpm
www ユーザーが存在しないことを示すプロンプトが表示される場合 (www.conf には、nobody ではなく www が入力されます)、次を追加します:
useradd www chown -R www:www /www
開始されているかどうかを確認します:
ps aux |grep php-fpm # 另外该命令也可以让我们知道fpm的配置文件在哪。 netstat -ant |grep 9000
Check 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平滑重启
再起動方法 2:
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 summary + 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; }
ローカルホストの構成:
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 内:
vi /etc/profile# プロファイル ファイルを変更します:
export PATH="$PATH:/usr/local/redis/bin"最後の行に追加します:
. /etc/profile次に、このファイルをすぐに適用します:
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この方法で直接呼び出すことができます。 redis-cli のコマンドは #Client:
2.0 インストール
phpredis/phpredis: A PHP extension for Redis https://github.com/phpredis/phpredis
3.0 インストール
です。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
最初に igbinary をインストールする必要があります:
PECL::Package::igbinarymemcache をインストールしますhttp://pecl.php.net/package/igbinary
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 installpecl install memcache
git clone https://github.com/websupport-sk/pecl-memcache memcache
cd memcache
phpize
./confihure
make
make install
php7 のインストールには互換性の問題があります。github から利用可能なものを見つけました:
pecl install memcachedインストールmemcached:
yum install libmemcached-dev
最初にインストールする必要があります:
yum install php-cli php-devel php-common php-pear php-gd php-fpm php-mbstring php-mcrypt php-mysql php-sqlite3 php-pdo php-memcache
yum/apt-get を使用して php をインストールします
開発環境をすぐにセットアップしたい場合
sudo apt-get install php7.0-cli php7.0-dev php-pear php7.0-common php7.0-pdo php7.0-curl php7.0-gd php-redis php-xdebug php-memcache php7.0-fpm composer
Use yum search php を使用して、どの PHP 関連の拡張機能をインストールできるかをクエリします。
ubuntu の場合:
/etc/php.ini /etc/php-fpm.conf /etc/php-fpm.d/www.conf /etc/php.d/mysqli.ini /etc/php.d/pdo.ini
15.9 MB アーカイブをダウンロードする必要があります。
解凍後、57.7 MB の追加スペースが消費されます。 ######続けたいですか? [Y/n]
php-pear には pecl が含まれ、php-dev には phpize が含まれ、pecl は phpize に依存します。
yum を使用してインストールされた php の場合、その設定ファイルは次の場所にあることに注意してください。
yum install -y gcc gcc-c++ make cmake bison autoconf
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
常见问题
1、编译PHP提示easy.h should be in
如果是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をインストールする方法を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

ドリームウィーバー CS6
ビジュアル Web 開発ツール

WebStorm Mac版
便利なJavaScript開発ツール

Safe Exam Browser
Safe Exam Browser は、オンライン試験を安全に受験するための安全なブラウザ環境です。このソフトウェアは、あらゆるコンピュータを安全なワークステーションに変えます。あらゆるユーティリティへのアクセスを制御し、学生が無許可のリソースを使用するのを防ぎます。

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境
