Mysql转储在shell脚本中,自动从settings.php读取数据库变量

时间:2017-10-12 18:13:53

标签: mysql shell

我正在编写一个脚本,它将自动备份大约70个网站,每个网站都有不同的数据库变量。

我想弄清楚的是如何读取数据库变量。它们存储在每个站点的settings.php中,所以看起来就像是从那里开始。我怎样才能从settings.php中读取它们?

1 个答案:

答案 0 :(得分:0)

  

注意:由于您未包含任何代码或所拥有的代码   试过。我会尽力给你很好的建议。

由于你有70个不同的网站,希望他们可能在不同的文件夹或其他东西中有 settings.php 文件。

我建议您在项目的每个根文件夹中创建一个 setting_include.php 文件,其中包含以下内容

setting_include.php

$ setting_path ='您的设置路径,因为它可能会改变项目到项目';

现在认为您的 settings.php 具有以下设置

的settings.php

$database['mysql_username']           = 'username';
$database['mysql_database_name']      = 'database_name';
$database['mysql_database_password']  = 'database_password';
$database['mysql_port']               = 'port';

我假设对于备份你可以循环到每个所有项目。我不知道你在做什么。

$errors = array();
foreach($projects as $project){
    /* Check whether the file exists or not */
    include_once $project.'/setting_include.php';
    if(file_exists($setting_path)){
        include_once $setting_path;
        /* Once you include your settings.php you will be able to access it as follows */
        echo $database['mysql_database_name'];
        echo $database['mysql_database_password'];

        /* Her you can write your script to take a back up */
    }else{
        $errors[] = $project.' : path was not loaded properly';
    }

}