首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >"Drush找不到数据库连接详细信息“

"Drush找不到数据库连接详细信息“
EN

Drupal用户
提问于 2016-03-02 01:14:58
回答 1查看 3.7K关注 0票数 1

作为一个新用户,我遇到了一个令我困惑的问题,我希望这里的人能回答我如何修复这个错误。我试图用命令将现有的drupal安装克隆到我的mac上的一个位置

代码语言:javascript
复制
echo "Pushing private files"
/usr/local/bin/drush core-rsync @hpc.dev:%private @hpc.local:%private
echo "Pushing webroot files"
/usr/local/bin/drush -y core-rsync @hpc.dev @hpc.local
echo "Pushing database"
/usr/local/bin/drush -y sql-sync --no-cache @hpc.dev @hpc.local
echo "Clearing Drupal cache"
/usr/local/bin/drush -y @hpc.local cc all

这很好,直到使用了sql-sync部分,在其中我得到了错误:

代码语言:javascript
复制
... stuff stuff stuff
Command dispatch complete                                                             [notice]
Copying dump file from Source to Destination.                                      [ok]
Starting to import dump file onto Destination database.                            [ok]
/usr/bin/php /usr/local/drush-master/drush.php --php=/usr/bin/php  --backend=2        [notice]
--verbose --yes --strict=0 --root=/Users/cook47/Sites/drupal-test/html
--uri='http://localhost/~cook47/drupal-test'  sql-query  
--file=/tmp/hpc-drupal-dev_20160302_005939.sql.gz --file-delete 2>&1
exception 'Drush\Sql\SqlException' with message 'Unable to find a matching SQL     [error]
Class. Drush cannot find your database connection details.' in
/usr/local/drush-master/commands/sql/sql.drush.inc:591
Stack trace:
#0 /usr/local/drush-master/commands/sql/sql.drush.inc(419):
drush_sql_get_class(NULL)
#1 [internal function]: drush_sql_query()
#2 /usr/local/drush-master/includes/command.inc(366):
call_user_func_array('drush_sql_query', Array)
#3 /usr/local/drush-master/includes/command.inc(217): _drush_invoke_hooks(Array,
Array)
#4 [internal function]: drush_command()
#5 /usr/local/drush-master/includes/command.inc(185):
call_user_func_array('drush_command', Array)
#6 /usr/local/drush-master/lib/Drush/Boot/BaseBoot.php(67): drush_dispatch(Array)
#7 /usr/local/drush-master/includes/preflight.inc(66):
Drush\Boot\BaseBoot->bootstrap_and_dispatch()
#8 /usr/local/drush-master/drush.php(12): drush_main()
#9 {main}

我在本地主机上的数据库或我的别名似乎出了问题。

这里是localhost的别名:

代码语言:javascript
复制
$aliases['local'] = array (
  'root' => '/Users/cook47/Sites/drupal-test/html', //CHANGEME
  'uri' => 'http://localhost/~cook47/drupal-test', //CHANGEME
  //'remote-host' => "localhost",
  //'remote-user' => 'cook47',
  'path-aliases' => array (
    '%drush' => '/usr/local/bin/drush', //CHANGEME
    '%site' => 'sites/default/',
    '%files' => 'sites/default/files',
    '%private' => '../private',
    '%dump' => '/export/www/hpc-drupal-dev.llnl.gov/drush-dump.sql',//CHANGEME
  ),
  'target-command-specific' => array(
    'sql-sync' => array(//CHANGEME
      'enable' => array('devel'),
      'disable' => array(
      ),
    ),
  ),
  'command-specific' => array(
    'rsync' => array(
      'mode' => 'vrlzOk',
      'exclude-conf' => 1,
    ),
  ),
  'databases' => array (
    'default' => array (
      'default' => array (
        'database' => 'hpc-drupal-dev', //CHANGEME
        'username' => 'hpc-drupal-dev', //CHANGEME
        'password' => 'xxxxxx', //CHANGEME
        'host' => 'localhost',
        'port' => '',
        'driver' => 'mysql',
        'prefix' => '',
      ),
    ),
  ),
);
EN

回答 1

Drupal用户

回答已采纳

发布于 2016-03-02 01:34:44

Drush不再允许您在站点别名文件中定义“数据库”记录,以便与sql-sync一起使用。这曾经在早期版本中起作用,但不再受支持。确保源站点和目标站点都有包含数据库信息的有效settings.php文件。

测试:

代码语言:javascript
复制
drush @hpc.dev sql-conf

如果您的数据库连接是正确的,它将显示。在每个站点上使用sql-conf可以帮助隔离哪些站点的连接信息有问题。

票数 2
EN
页面原文内容由Drupal提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://drupal.stackexchange.com/questions/193188

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档