ibase_backup

(PHP 5、PHP 7 < 7.4.0)

ibase_backup在服务管理器中启动备份任务并立即返回

描述

ibase_backup(
    资源 $service_handle,
    字符串 $source_db,
    字符串 $dest_file,
    整数 $options = 0,
    布尔值 $verbose = false
): 混合

此函数将参数传递给(远程)数据库服务器。它将在那里启动一个新的备份进程。因此您不会收到任何响应。

参数

service_handle

以前打开的数据库服务器连接。

source_db

数据库服务器上数据库的绝对文件路径。您也可以使用数据库别名。

dest_file

数据库服务器上备份文件的路径。

options

要传递给数据库服务器以进行备份的其他选项。 options 参数可以是以下常量的组合:IBASE_BKP_IGNORE_CHECKSUMSIBASE_BKP_IGNORE_LIMBOIBASE_BKP_METADATA_ONLYIBASE_BKP_NO_GARBAGE_COLLECTIBASE_BKP_OLD_DESCRIPTIONSIBASE_BKP_NON_TRANSPORTABLEIBASE_BKP_CONVERT。有关更多信息,请阅读关于 预定义常量 的部分。

verbose

由于备份过程是在数据库服务器上完成的,因此您无法获取其输出。此参数毫无用处。

返回值

成功时返回 true,失败时返回 false

由于备份过程是在(远程)服务器上完成的,因此此函数只是将参数传递给它。只要参数合法,您就不会获得 false

示例

示例 #1 ibase_backup() 示例

<?php

// 通过 IP 地址和端口连接到数据库服务器
$service = ibase_service_attach ('10.1.11.200/3050', 'sysdba', 'masterkey');

// 在数据库服务器上启动备份进程
// 使用完整路径到 /srv/backup/employees.fbk 备份 employee 数据库
// 不要使用任何特殊参数
ibase_backup($service, '/srv/firebird/employees.fdb', '/srv/backup/employees.fbk');

// 释放连接的连接
ibase_service_detach ($service);
?>

示例 #2 使用参数的 ibase_backup() 示例

<?php

// 通过名称和默认端口连接到数据库服务器
$service = ibase_service_attach ('fb-server.contoso.local', 'sysdba', 'masterkey');

// 在数据库服务器上启动备份进程
// 使用别名到 /srv/backup/employees.fbk 备份 employee 数据库。
// 只备份元数据。不要创建可移植的备份。
ibase_backup($service, 'employees.fdb', '/srv/backup/employees.fbk', IBASE_BKP_METADATA_ONLY | IBASE_BKP_NON_TRANSPORTABLE);

// 释放连接的连接
ibase_service_detach ($service);
?>

参见

添加注释

用户贡献的注释 1 注释

Gara
18 年前
我尝试让备份功能正常工作,但始终无法弄清楚从哪里获取资源 service_handle。诀窍是使用 ibase_service_attach。

$resource_service_handle = ibase_service_attach ('localhost', 'username', 'password');

ibase_backup($resource_service_handle, 'source_database', 'destination_file');

ibase_service_detach ($resource_service_handle);
To Top