1.背景
学习测试框架的过程中要用到数据库的直连(本地安装的phpstudy被安全部门检测有安全风险,所以考虑直接装在测试服务器上,出问题将容器直接释放掉...),因此考虑装phpMyAdmin,原因是比较熟悉并且界面也比较美观
2.PHP安装(phpMyAdmin需要php环境)
安装源
#Centos 5.X
rpm -Uvh http://mirror.webtatic.com/yum/el5/latest.rpm
#CentOs 6.x
rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm
#CentOs 7.X
rpm -Uvh https://mirror.webtatic.com/yum/el7/epel-release.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
安装php7
yum install php70w.x86_64 php70w-cli.x86_64 php70w-common.x86_64 php70w-gd.x86_64 php70w-ldap.x86_64 php70w-mbstring.x86_64 php70w-mcrypt.x86_64 php70w-mysql.x86_64 php70w-pdo.x86_64
yum install php70w-devel
该部分是直接google的,地址在写的时候已找不到,在此说声抱歉了.
错误以及解决过程:
在执行php -i | grep php.ini (或者执行php -v)的时候报错,并且使用phpinfo的时候找不到mysqli扩展
首先找下libmysqlclient.so.18 在哪里
然后将/u01/mysql/lib放入/etc/ld.so.conf中
最后执行下ldconfig,再使用php -v或者使用phpinfo的时候可以看到有mysqli的扩展信息
原因是使用上述yum命令安装的时候,共享库是在非标准路径下,但是linux在加载的时候是加载的标准路径,所以我们只需要将非标准路径加到/etc/ld.so.conf中,然后运行下ldconfig命令,这样ld.so在加载共享库的时候就没问题了
3.安装http并开启httpd
yum install httpd -y //下载
service httpd start //启动
注:httpd配置文件在/etc/httpd/conf/httpd.conf中,我将apache的端口改成8080,运行目录改成了/home/admin/apache
4.Mysql安装
安装并启动mysql
yum install mysql-server -y
service mysqld start
为root用户设置密码
mysql
set password for 'root'@'localhost' = password('root');
报错以及解决:安装好了以后发现远程无法连接:报错“is not allowed to connect to this MySQL server”
mysql -u root -p //输入密码
use mysql; //使用mysql库
update user set host = '%' where user = 'root'; //有报错的话不管
FLUSH PRIVILEGES; //刷新权限
当自己在本地使用: mysql -h ip -P 3306 -u root -p 并输入密码可以连接上的时候,说明远程连接没问题
5.下载phpMyAdmin tar包并运行
下载phpMyAdmin的tar包到apache的运行目录下(一般是/var/www/html,这里我修改成了/home/admin/apache),然后解压使用即可,下载地址
此时/home/admin/apache目录下应该是这样的:
ps:index.php是用来测试mysql扩展是否是没问题的
接着按照如下地址进行访问即可(确认httpd、mysqld已开启)
最后输入账号和密码即可,如果出现如下错误的话:
先将mysql服务关闭,然后在mysql的配置文件my.conf(my.ini)中的mysqld字段下添加skip_grant_tables,这样会跳过权限检测,然后在linux上执行以下命令:
$mysql
mysql>use mysql; //使用mysql库
mysql>update user set host = '%' where user = 'root';
mysql>exit;
最后将skip_grant_tables去掉,然后重新使用mysql -u root -p并输入密码登录数据库即可