导航:首页 > 编程大全 > php访问多个数据库

php访问多个数据库

发布时间:2024-11-14 06:08:54

㈠ thinkphp如何连接多个数据库

1、onfig.php文件
'LOAD_EXT_CONFIG'
=>'db,db_config',
//
加载扩展
配置文件
。多个文件用逗号分隔
//其中db.php中放置的是mysql的配置
//db_config放置的是
sqlserver
的配置
2、其中db.php内容如下
return
array(
'DB_TYPE'=>'mysql',
'DB_HOST'=>'
localhost
',
'DB_NAME'=>'your_mysql_dbname',
'DB_USER'=>'your_mysql_user_name',
'DB_PWD'=>'123456',
'DB_PORT'=>'3306',
'DB_PREFIX'=>'',
);
db_config.php内容如下
return
array(
'DB_CONFIG1'
=>
array(
'db_type'
=>
'pdo',
'db_user'
=>
'XX',
'db_pwd'
=>
'XXXXXXXX',
'DB_DSN'
=>
'sqlsrv:Server=XXXXXX;Database=XXXX',
),
);
3、在Lib/Model下新建一个专门的模型
class
SqlsrvModel
extends
Model
{
protected

$
connection

=
'DB_CONFIG1';
}
4、可以在Action
中调
各个模型了

㈡ PHP 读取多条数据库中数据

拿下面这段单独建个页面,改一下你的数据库名,表等信息试试。

<table width="50%" border="0">
<tr>
<td>ID</td>
<td>ID2</td>
<td>order1</td>
<td>order2</td>
<td>order3</td>
</tr>
<?php
//连接数据库
$conn=@ mysql_connect("服务器地址","用户名","密码") or die("连接数据库失败!");
mysql_select_db("数据库名",$conn) or die("连接数据库失败!");
mysql_query("set names 'GBK'");
//连接结束

//接收提交过来查询的ID
$id=$_POST["id"];
//查询数据库相关数据
$sql="select * from 数据表名 where ID2='".$id."' order by id desc";
$query=mysql_query($sql);
//循环输出
while($row=mysql_fetch_array($query)){
?>
<tr>
<td><?php echo $row["ID"];?></td>
<td><?php echo $row["ID2"];?></td>
<td><?php echo $row["order1"];?></td>
<td><?php echo $row["order2"];?></td>
<td><?php echo $row["order3"];?></td>
</tr>
<?php
}
?>
</table>
<form name="form1" method="post" action="">
<input type="text" name="id">
<input type="submit" name="Submit" value="查询">
</form>

㈢ php手把手教你做网站(二十九)thinkphp6部署多个数据库

前边介绍了负载均衡,mysql同步,接下来介绍tp6分布式部署多个数据库,实现读写分离。

tp6的分布式部署读和写仍然是一个系统,这里我们分开操作,给用户展示的就是从数据库,后端添加文章就是主库,然后同步到从库。

1、配置数据库链接参数

目标:实现随机使用数据库展示信息,只是读操作。

测试:前台可以读取表中内容(存放的不一致),查看是否是随机显示的。

打开.env文件进行编辑

说明:

2、编辑database.php

找到deploy设置为1分布式部署,下边不要改,都是读,写入的也就是后端的我们单独建站连接主库。

配置完成,tp6使用的是mt_rand取随机数判断使用哪个数据库。

3、数据库交互写操作

比如浏览量没必要每次都去更新数据库,可以先使用redis缓存,存够1000的整数倍,再去更新数据库。

4、后台独立,也就是写

可以前后端分离,单独做一个网站(没有前端)使用ip访问或者独立的域名连接后台。

5、上传附件(jquery ajax跨域上传)

使用了nginx负载均衡,肯定是多个一样的网站,如果图片存放到一个站,别的就不能访问了,可以单独设置一个附件(压缩包,图片等)服务器,可以使用二级域名连接,这就要求我们上传附件的时候,是上传到附件服务器。

jqueryURL

API控制器apdpic方法

说明:

也可以先传到后台服务器然后使用(php)ftp上传,或者是通过curl上传到附件服务器,感觉那样毕竟麻烦,直接设置跨域会比较简单。

也测试了使用jsonp跨域,但是不能上传附件。

6、thinkphp6实现读写分离(在一个站点)

我个人是不喜欢这样的,负载均衡应该是均衡地读,也就是前台单独一个站点,后端的写是另一个独立的站点,看个人喜好吧。

独立后台的优点:可以提升安全性,因为我们的后台网址是不公开的,避免用户猜测一些后台的信息。

.env配置按照1所述编辑,默认第一个是主库。

database.php

愿大家在新的一年心想事成,万事如意!!!

㈣ PHP访问MySQL数据库的步骤。

PHP访问抄MySQL数据库:
因为连接数据库需要较长的时间和较大的资源开销,所以如果在多个网页中都要频繁地访问数据库,则可以建立与数据库的持续连接。即调用mysql_pconnect()代替mysql_connect()。
基本步骤:
1.连接服务器:mysql_connect();
2.选择数据库:mysql_select_db();
3.执行SQL语句:mysql_query();

查询:select
显示:show
插入:insert into
更新:update
删除:delete

4.关闭结果集:mysql_free_result($result);
5.关闭数据库:mysql_close($link);

㈤ php pdo单例模式怎么同时连接两个数据库

PHP pdo单例模式连接数据库
';
if ( self::$pdo == null )
{
$host = '115.29.223.160';
$user = 'zhangwei';
$pwd = 'zhang111';
$dbname = 'wangzhan';

$dsn = "mysql:host=$host;dbname=$dbname;port=3306";
$pdo = new PDO ( $dsn, $user, $pwd );
$pdo->query('set names utf8;');
$pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
self::$pdo = $pdo;
}
return self::$pdo;
}

public static function getStmt ( $sql )
{
$pdo = self::getPdo ();
return $pdo -> prepare( $sql );
}
}

$sql = "INSERT INTO testss (wef,wef1) VALUES(?,?)";
$stmt = Db::getStmt ( $sql );
$stmt = Db::getStmt ( $sql );

?>

输出结果
NULL
object(PDO)#1 (0) { }

第一次null 第二次再获取就已经有了 不用重新连接了
单利模式好处就是保存变量 他是用static保存的 所以 退出函数 变量不会释放
关于这个问题,差不多就是这个样子的了,你如果不明白,可以自己去后盾瞅瞅,我这些都是在后盾上学的,有空可以去看一下,就算不喜欢也没关系啊,何乐而不为呢?

阅读全文

与php访问多个数据库相关的资料

热点内容
ps入门必备文件 浏览:348
以前的相亲网站怎么没有了 浏览:15
苹果6耳机听歌有滋滋声 浏览:768
怎么彻底删除linux文件 浏览:379
编程中字体的颜色是什么意思 浏览:534
网站关键词多少个字符 浏览:917
汇川am系列用什么编程 浏览:41
笔记本win10我的电脑在哪里打开摄像头 浏览:827
医院单位基本工资去哪个app查询 浏览:18
css源码应该用什么文件 浏览:915
编程ts是什么意思呢 浏览:509
c盘cad占用空间的文件 浏览:89
不锈钢大小头模具如何编程 浏览:972
什么格式的配置文件比较主流 浏览:984
增加目录word 浏览:5
提取不相邻两列数据如何做图表 浏览:45
r9s支持的网络制式 浏览:633
什么是提交事务的编程 浏览:237
win10打字卡住 浏览:774
linux普通用户关机 浏览:114

友情链接