PHP第二篇:php连接远程数据库——unbuntu环境,亲测成功

7 篇文章 0 订阅

 

前段时间我已经在我新买的阿里云服务器中,安装好了apache,php,python,mysql,phpmyadmin。

可惜安装phpmyadmin和mysql那里忘记写博客了,但是网上有教程,听详细的,但是我走过,还是有坑,但是忘了。。。

现在要用php远程连接我在服务器安装好的mysql,需要对mysql做一些配置。

由于网上大多数很正确的,但是有个步骤大部分漏了,我也不知他们怎么成功的,可能忘写了。。。

 

1.在mysql中的mysql数据库的user表设置新的root任意网段访问

1)如果你跟我一样安装好了phpmyadmin,它能连接到mysql数据库,很简单。

在user表那里执行下面sql语句就好了:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root用户密码' WITH GRANT OPTION;

2)如果你是用ssh连接的远程访问,按下面操作执行:

           ① 进入mysql控制台:mysql -uroot -p   ,输入密码然后  show databases

                

           ② 使用mysql数据库: use mysql 

                 

                在执行用phpmyadmin中执行那个sql语句,

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root用户密码' WITH GRANT OPTION;

                 成功后还要执行 flush privileges;

                

 

2.修改mysql配置文件,将bind-address后面的127.0.0.1改为0.0.0.0(重要)

这一步就是很多教程都忘了的,结果我一直连不上,改了之后立马连上了。

感谢这位大佬的:https://blog.csdn.net/tjpu_lichking/article/details/79093254

至于怎么找到mysql配置文件,linux一般是在 /etc/mysql/mysql.conf.d/mysqld.cnf 上张图,如果不是这个名字,把.cnf的文件都打开一遍,字多肯定是。我这是用xftp打开的,你们也可在ssh中找到

                        

打开后找到bind-address,修改,如下图

                                       

 

3.配置服务器防火墙,开放3306端口

首先在这里,由于我是用阿里云的服务器,所以我在阿里云的控制台就能打开了,如果是自己的服务器,需要自行百度下怎么开发3306让外网访问。这里我贴一张阿里云的打开3306端口的图片:

入和出方向都打开了。

 

4.php测试是否能连接

php代码:

<?php
	$dbhost = '1**.23.189.1**';  // mysql服务器主机地址
	$dbuser = 'root';            // mysql用户名
	$dbpass = '123';          // mysql用户名密码
	$conn = mysql_connect($dbhost,$dbuser,$dbpass)  or die('DB_CAN_NOT_ACCESS');  
	print_r('数据库连接成功!');
	mysqli_close($conn);
?>

 

5.测试结果

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值