LNMPA 中PHP 连接MySQL,公网访问
Posted 暗星涌动
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LNMPA 中PHP 连接MySQL,公网访问相关的知识,希望对你有一定的参考价值。
一、前言
LNMPA 中的是Apache ,也就是前文中安装的httpd 服务。而该服务的默认端口就是80 端口,nginx 的默认端口也是80 端口,因此同时安装这两者就必然会产生端口冲突的问题。
解决方法:
修改其中任意一个的端口。
二、安装mysql
2.1 安装数据库
CentOS 6 或早期的版本中提供的是 MySQL 的服务器/客户端安装包,但 CentOS 7 已使用了 MariaDB 替代了默认的MySQL。
MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可
MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。
输入以下命令:
yum install -y mariadb mariadb-server
systemctl start mariadb.service
2.2 修改root 密码
mysql -u root
set password for 'root'@'localhost'=password('root');
2.3 授权远程登录
mysql -u root -p
我们是在服务器上进行的环境配置,如果sql 操作也在服务器上进行的话太过不方便,因此,开启MySQL 远程连接就显得尤为重要。输入以下命令:
grant all on *.* to root identified by 'root';
该命令的作用是:允许root 用户以root 的身份凭证进行远程登录,登录后可以连接任意数据库,进行任意操作(增删查改、授权等)。
授权后进行权限的刷新:
flush privileges;
systemctl restart mariadb.service
2.4 创建测试的数据表
该数据表中仅有一条测试数据:
三、PHP连接MySQL
3.1 编写测试文件
vi /usr/share/nginx/html/mysqltest.php
<?php
header("Content-type: text/html;charset=utf-8");
$servername = " "; //公网IP
$username = "root";
$password = "root";
$dbname = "test";
$conn = mysqli_connect($servername, $username, $password, $dbname);
if(!$conn){
die("Connection failed: " . mysqli_connect_error());
}
$conn->query("set character set 'utf8'");
$sql = "select * from test"; //表名
$result = $conn->query($sql);
if($result == false){
die("query error!");
}
if($result->num_rows > 0){
while($row = mysqli_fetch_array($result)){
echo "通过php读取数据库:" . $row["name"] ; //列名
}
}
else{
echo "no message!";
}
$conn->close();
?>
3.2 连接测试
curl localhost:88/mysqltest.php
其实,到目前为止,PHP 和Mysql 仍然是两个独立的服务,两者并未产生关联。
就如同在Java 中你没有导入 mysql-connector-java.jar 包就进行MySQL 连接一般,这是不可能有效果的。
3.3 安装php-mysql
yum -y install php-mysql
systemctl restart php-fpm
3.4 再次连接MySQL
公网IP:88/mysqltest.php
可以看见,此次连接已经成功访问到数据库内的数据了。
四、错误日志文件
mysql 的错误日志文件: /var/log/mariadb/mariadb.log
php-fpm 的错误日志文件:/var/log/php-fpm/www-error.log
apache 的错误日志文件: /var/log/httpd/error_log
若在环境配置过程中出现什么差错,可以查看以上日志文件进行错误检查。
以上是关于LNMPA 中PHP 连接MySQL,公网访问的主要内容,如果未能解决你的问题,请参考以下文章