phpMyAdmin 配置文档

导语

由于线上服务器 22 端口封闭,不能再通过隧道机制访问线上数据库,因此需要使用新的机制访问线上服务。我这里使用 phpMyAdmin 方案连接线上服务。

  1. 安装 php 环境。

    1. 确认本机环境是否安装了 php。

      1 $ php
      2 -bash: php: command not found
    2. 下载 php,安装 php 环境,我当前账号为 work 。
      1 $ cd ~/download
      2 $ wget http://cn2.php.net/distributions/php-5.6.29.tar.gz
      3 $ tar -xzvf php-5.6.29.tar.gz && cd php-5.6.29
      4 $ mkdir -p /home/work/soft/php5
      5 $ ./configure --prefix=/home/work/soft/php5 \
      6   --with-config-file-path=/home/work/soft/php5/etc \
      7   --enable-fpm --enable-mbstring
      8 $ make && make install
      9 $ sudo ln -s /home/work/soft/php5/bin/* /usr/local/bin/
    3. 配置 php-fpm。  
      1 $ cd ~/soft/php5/etc/ && cp php-fpm.conf.default php-fpm.conf
      2 $ sudo ln -s /home/work/soft/php5/sbin/* /usr/local/bin/
      3 $ php-fpm
      4 [11-Jan-2017 11:52:19] NOTICE: [pool www] 'user' directive is ignored when FPM is not running as root
      5 [11-Jan-2017 11:52:19] NOTICE: [pool www] 'group' directive is ignored when FPM is not running as root
      6  
      7 #经过几次尝试,发现系统是以 /etc/php-fpm.d/www.conf 为准的,按下面设置完毕以后,执行如下命令
      8 $ sudo service php-fpm start
    4. 在 php-fpm.conf 里主要设置三个地方
      1 1 ;默认都是 nobody
      2 2 user = work
      3 3 group = work
      4 4  
      5 5 #设置 session 到一个拥有写权限的目录下
      6 6 php_value[session.save_path] = /home/work/tmp/php/session
      7 7 ;使用默认监听端口即可
      8 8 listen = 127.0.0.1:9000
  2. 安装 openResty

    1. 下载并安装 

      1 1 $ cd ~/download
      2 2 $ wget https://openresty.org/download/openresty-1.11.2.2.tar.gz
      3 3 $ tar -xzvf openresty-1.11.2.2.tar.gz
      4 4 $ cd openresty-1.11.2.2 && ./configure --prefix=/home/work/soft/openresty
      5 5 $ make && make install
      6 6 $ sudo ln -s /home/work/soft/openresty/nginx/sbin/* /usr/local/bin/
    2. 配置 phpMyAdmin.conf。
       1 server {
       2     listen 8888;
       3     access_log /home/work/var/log/phpMyAdmin/access.log sql_access;
       4     error_log logs/sqls.log info;
       5     location ~ \.php$ {
       6         root           /home/work/local/phpMyAdmin/;
       7         fastcgi_pass   127.0.0.1:9000;
       8         fastcgi_index  index.php;
       9         fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
      10         include        fastcgi_params;
      11     }
      12     location / {
      13         root           /home/work/local/phpMyAdmin/;
      14         index          index.php;
      15     }
      16 }
  3. 设置 phpMyAdmin

    1. 下载并安装 phpMyAdmin.

      1 $ wget https://files.phpmyadmin.net/phpMyAdmin/4.6.5.2/phpMyAdmin-4.6.5.2-all-languages.tar.gz
      2 $ tar -xzvf phpMyAdmin-4.6.5.2-all-languages.tar.gz -C /home/work/local/
      3 $ cd ../local/ && mv phpMyAdmin-4.6.5.2-all-languages phpMyAdmin
    2. 配置 config.inc.php 。
      1 $ cd phpMyAdmin
      2 $ cp config.sample.inc.php config.inc.php
  4. 配置服务,记录 SQL。

常见问题

  1. 出现 file not found 问题 ?

    这个问题很棘手,我花费了很长时间才解决,可以通过 nginx 的 error log,查看的更详细。主要有两类
    1. 一个是 fastcgi 配置问题,可以参考这篇文章(点我)。
    2. 另一种可能是你的权限问题,因为 php-fpm 默认是支持的 apache,所以在 /etc/php-fpm.d/www.conf 里设置的是 apache 账号,需要变更为我们的 nginx 用户,详见步骤 1.d 。

 

posted @ 2017-02-28 15:15  星火照天明  阅读(265)  评论(0编辑  收藏  举报