我司用的是阿里云,ECS + RDS(MySQL),现在有需求给运营的同学开个查询数据库的功能,让他们自己去库里统计他们需要的数据。我就在RDS上开了一个只读实例,也开了只读权限的账号,下面就是去哪里登录使用了,使用阿里云的DMS还得开个阿里云子账号、赋权,有点麻烦,使用Navicat吧,还需要知道什么是域名、端口号、连接等,门槛略高,想来想去还是使用phpMyAdmin吧。下面是phpMyAdmin的安装过程,包括安装php和apache。
我原本只是Java攻城狮一枚,但是因为没有运维,所以服务器的管理都在我这里了,作为Java攻城狮安装这些东西真心累,phpMyAdmin是php开发的,需要先安装php,然后再安装apache作为web服务器。
php安装
1)使用root账户进行安装
2)先安装依赖
# yum -y install libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel MySQL pcre-devel openssl openssl-devel curl-devel libxslt-devel
# yum -y install libmcrypt libmcrypt-devel mcrypt mhash
安装apxs,在配置php和apache时会使用
# yum list httpd*
# yum -y install httpd-devel.x86_64
# find / -name apxs
“find / -name apxs”可以查看apxs安装的目录
3)下载及解压,记得下载“.tar.gz”为结尾的文件,下载后的文件名是mirror,使用mv命令修改为php-7.1.18.tar.gz
# wget http://cn2.php.net/get/php-7.1.18.tar.gz/from/this/mirror
# mv mirro php-7.1.18.tar.gz
# tar -zxvf php-7.1.18.tar.gz
4)安装,其中“--with-apxs2”使用第2步中查看到的apxs安装目录
# cd php-7.1.18
# ./configure --prefix=/usr/local/php7 \
--with-apxs2=/usr/bin/apxs \
--with-curl \
--with-freetype-dir \
--with-gd \
--with-gettext \
--with-iconv-dir \
--with-kerberos \
--with-libdir=lib64 \
--with-libxml-dir \
--with-mysqli \
--with-openssl \
--with-pcre-regex \
--with-pdo-mysql \
--with-pdo-sqlite \
--with-pear \
--with-png-dir \
--with-xmlrpc \
--with-xsl \
--with-zlib \
--enable-fpm \
--enable-bcmath \
--enable-libxml \
--enable-inline-optimization \
--enable-gd-native-ttf \
--enable-mbregex \
--enable-mbstring \
--enable-opcache \
--enable-pcntl \
--enable-shmop \
--enable-soap \
--enable-sockets \
--enable-sysvsem \
--enable-xml \
--enable-zip
# make
# make install
5)复制配置文件
# cp php.ini-production /usr/local/php7/lib/php.ini
6)配置环境变量
在/etc/profile最后增加如下配置,然后source下就好了
PATH=$PATH:/usr/local/php7/bin
export PATH
7)查看php版本
# php -v
apache安装
1)安装依赖,apr,apr-util,pcre-devel(使用root用户)
·apr,没有指定安装目录,一般会是 /usr/local/apr
# wget https://mirrors.cnnic.cn/apache/apr/apr-1.6.3.tar.gz
# tar -zxvf apr-1.6.3.tar.gz
# cd apr-1.6.3
# ./configure
# make & make install
·apr-util,没有指定安装目录,会安装到 apr下,到/usr/local/apr/lib 和 /usr/local/apr/bin/apu-1-config 查看
# wget https://mirrors.cnnic.cn/apache/apr/apr-util-1.6.1.tar.gz
# tar -zxvf apr-util-1.6.1.tar.gz
# cd apr-util-1.6.1
# ./configure --with-apr=/usr/local/apr
# make & make install
·pcre-devel
# yum -y install pcre-devel
·openssl
# yum -y install openssl*
2)创建phpmyadmin Linux用户(使用root用户)
# useradd -d /home/phpmyadmin -m phpmyadmin
# passwd phpmyadmin
3)下载及解压,apache在Linux下叫做httpd
$ wget https://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.33.tar.gz
$ tar -zxvf httpd-2.4.33.tar.gz
4)安装,其中“--with-apxs2”为“/usr/bin/apxs”
$ cd httpd-2.4.33
$ ./configure --prefix=/home/phpmyadmin/apache_phpmyadmin --enable-so --enable-rewirte --enable-ssl --enable-cgi --enable-cgid --enable-modules=most --enable-mods-shared=most --enable-mpms-shared=all --with-apxs2=/usr/bin/apxs --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr
$ make
$ make install
5)修改配置
关于libphp7.so为啥在安装apache的时候没有加载到 /home/phpmyadmin/apache_phpmyadmin/modules/ 中,我也不清楚了,在这里手动拷贝过去
cd /home/phpmyadmin/apache_phpmyadmin/modules/
find / -name libphp7.so
cp /usr/lib64/httpd/modules/libphp7.so libphp7.so
修改配置文件
$ cd /home/phpmyadmin/apache_phpmyadmin
$ vi conf/httpd.conf
Listen 8087 # 端口修改为8087
ServerName 172.18.234.16:8087 # IP为服务的内网IP,端口与上一致
DirectoryIndex index.php index.html # 修改首页
#LoadModule mpm_event_module modules/mod_mpm_event.so # 将此项注掉,不然启动phpMyAdmin时会报安全模式错误
LoadModule mpm_prefork_module modules/mod_mpm_prefork.so # 将此项打开,不然启动phpMyAdmin时会报安全模式错误
LoadModule proxy_module modules/mod_proxy.so # 将此项打开
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so # 将此项打开
LoadModule php7_module modules/libphp7.so # 此项不存在,自己写上的
# 在 <IfModule mime_module> 中增加如下类型
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
安装phpMyAdmin
1)下载及解压
$ wget https://files.phpmyadmin.net/phpMyAdmin/4.8.1/phpMyAdmin-4.8.1-all-languages.tar.gz
$ tar -zxvf phpMyAdmin-4.8.1-all-languages.tar.gz
2)将解压后的所有文件放入 /home/phpmyadmin/apache_phpmyadmin/htdocs/ 中
3)修改配置
$ cd /home/phpmyadmin/apache_phpmyadmin/htdocs
$ cp config.sample.inc.php config.inc.php
$ vi config.inc.php
$cfg['blowfish_secret'] = 'NOMZ7eksF3aVr7Yd'; /* 随便输入一串字符串 */
$cfg['Servers'][$i]['host'] = 'r-2zyt19lgmvbnmkjrsv9zo.mysql.rds.aliyuncs.com'; /* 这里写mysql地址,如果mysql在本地,使用127.0.0.1,端口默认使用3306 */
4)关闭导出功能
因为不想让运营人员下载数据,要关闭导出功能,但是没找到关闭的地方。办法是想出来的,删除或重命名“ll |grep export”查询到的所有php文件即可,页面上的导出功能就会失败。
5)启动apache
$ cd /home/phpmyadmin/apache_phpmyadmin
$ bin/apachectl start
6)登录
此时在浏览器中打开,会进入登录页面,登录的用户名和密码是数据库的用户名密码,登录后就可以正常使用了