sae php7 mysql_第七星尘的独立博客

———————原文分割线——————

As  we all know,无论是SAE或者BAE,都不支持链接外部数据库。仅支持跨应用访问。无论平台商是出于业务考虑还是安全考虑,数据库封闭多多少少让人觉得有点遗憾。尤其一些个人开发者,喜欢到各种服务器折腾,这个时候有个统一的数据库会非常方便。既可以充分利用各平台的优势进行开发,也可以方便地迁移。

Here comes my RemoveMysql. 通过接口实现跨数据库访问。RemoveMysql只适合小型开发,数据量大的时候,会严重受网络环境制约,可能会延迟很厉害。所以建议做小应用,不宜用于大应用环境。大应用建议自己写个完善的REST Server,或者换个支持传统方式访问数据库的远程服务器。By the way,使用RemoveMysql的时候注意网站安全,更改代码文件名和通信密匙以提高安全性。

下载后,有两个文件夹。Dbclient是本地端,Dbserver是服务器。它们的关系是:Dbclient访问Dbserver上的数据库。例如,你可以把Dbclient放在SAE的一个应用上,把Dbserver放在BAE某个应用上。通过配置,可以让SAE应用访问BAE数据库。反过来也行。下面讲讲怎么配置。

1、配置Dbserver

Dbserver文件夹就只有index.php一个单文件。文件开头是个$config数组,保存着配置信息。你需要根据实际情况,填充必要信息。包括通信密匙(由你自定义的,Dbclient会用到),数据库服务器地址、端口等等。对于普通php空间,则在后台面板cpanel一般会写着。下面我就说说SAE和BAE的。

对于SAE,由于数据库信息被预定义成常量,所以可以很统一。你可以直接复制我下面的信息(除通信密匙外)

$config=array(

‘secret’=>’your_secret’, //填写通信密匙

‘host’=>SAE_MYSQL_HOST_M, //数据库服务器地址

‘port’=>SAE_MYSQL_PORT, //数据库服务器地址端口,

‘username’=>SAE_MYSQL_USER, //数据库用户名

‘password’=>SAE_MYSQL_PASS, //数据库密码

‘dbname’=>SAE_MYSQL_DB, //选择使用哪个数据库

‘charset’=>’utf8′ //编码,默认utf8

);

对于BAE,也差不多,下面的供参考

$config=array(

‘secret’=>’your_secret’, //填写通信密匙

‘host’=>getenv(‘HTTP_BAE_ENV_ADDR_SQL_IP’), //数据库服务器地址

‘port’=>getenv(‘HTTP_BAE_ENV_ADDR_SQL_PORT’), //数据库服务器地址端口

‘username’=>getenv(‘HTTP_BAE_ENV_AK’), //数据库用户名

‘password’=>getenv(‘HTTP_BAE_ENV_SK’), //数据库密码

‘dbname’=>’awdUdInfgjfCKUdVDHmA’, //从平台获取查询要连接的数据库名称

‘charset’=>’utf8′ //编码,默认utf8

);

特别指出,上面填写的’dbname’请从BAE后台查询。另外还要注意使用正确的数据库编码。不知道BAE默认编码现在还是不是GBK。总之是可以通过后台修改的。

2、使用Dbclient

index.php是个简单的调用示例。new Mysql()的时候需要两个参数:url和通信密匙。url即你的Dbserver端所在网址,通信密匙则是你在Dbserver端所定义的’secret’。至于详细的方法调用,请看MysqlClient.class.php的源码以及注释。如果封装的那些方法不够用,你可以根据你的实际情况,添加几个符合自己实际需要的操作方法

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值