使用PHPMyAdmin管理Amazon RDS [英] Using PHPMyAdmin to administer Amazon RDS

查看:118
本文介绍了使用PHPMyAdmin管理Amazon RDS的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我无法使PHPMyAdmin连接到我的Amazon RDS实例.我已将我的IP地址的权限授予了数据库安全组,该安全组有权访问我尝试访问的该数据库.这就是我正在合作的东西...

I can't get PHPMyAdmin to connect to my Amazon RDS instance. I've granted permissions for my IP address to the DB Security Group which has access to this database I'm trying to access. Here's what I'm working with...

    $cfg['Servers'][$i]['pmadb'] = $dbname;
    $cfg['Servers'][$i]['bookmarktable'] = 'pma_bookmark';
    $cfg['Servers'][$i]['relation'] = 'pma_relation';
    $cfg['Servers'][$i]['table_info'] = 'pma_table_info';
    $cfg['Servers'][$i]['table_coords'] = 'pma_table_coords';
    $cfg['Servers'][$i]['pdf_pages'] = 'pma_pdf_pages';
    $cfg['Servers'][$i]['column_info'] = 'pma_column_info';
    $cfg['Servers'][$i]['history'] = 'pma_history';
    $cfg['Servers'][$i]['designer_coords'] = 'pma_designer_coords';

    /* Uncomment the following to enable logging in to passwordless accounts,
     * after taking note of the associated security risks. */
    // $cfg['Servers'][$i]['AllowNoPassword'] = TRUE;

    /* Advance to next server for rest of config */
    $i++;
}

    $cfg['Servers'][$i]['auth_type'] = 'http';  //is this correct?
    $cfg['Servers'][$i]['user'] = 'MASTER-USER';
    $cfg['Servers'][$i]['password'] = 'MASTER-USER-PASSWORD';
    $cfg['Servers'][$i]['hide_db'] = '(mysql|information_schema|phpmyadmin)';
    /* Server parameters */
    $cfg['Servers'][$i]['host'] = 'MY-DB.us-east-1.rds.amazonaws.com';
    $cfg['Servers'][$i]['connection_type'] = 'socket';
    $cfg['Servers'][$i]['port'] = PORT;

我不确定我的配置是否正确.

I'm not sure if my configuration is correct.

我收到此错误:

#2013-在读取初始通信数据包"时失去与MySQL服务器的连接,系统错误:110

#2013 - Lost connection to MySQL server at 'reading initial communication packet', system error: 110

有人有什么建议吗?

推荐答案

我发现此问题中的大多数答案都缺乏解释.要在EC2中安装的phpMyAdmin中添加RDS服务器,您可以首先通过SSH登录到EC2.然后,发出以下命令来编辑phpMyAdmin的配置文件(使用vinano或其他任何喜欢的文本编辑工具):

I found most of the answers in this question lack explanation. To add RDS server in phpMyAdmin installed in EC2, you can first login to your EC2 via SSH. Then, issue the following command to edit the Config file of phpMyAdmin (use vi, nano or any other favorite text editing tool):

sudo vi /etc/phpMyAdmin/config.inc.php # Amazon Linux
sudo vi /etc/phpmyadmin/config.inc.php # Ubuntu Linux

config.inc.php中找到以下几行:

/*
 * End of servers configuration
 */

在服务器端配置"行的上方行之后添加以下行:

Append the following lines above the "End of servers configuration" line:

$i++;
$cfg['Servers'][$i]['host'] = 'xxxxx.xxxxxxxxxx.us-east-1.rds.amazonaws.com';
$cfg['Servers'][$i]['port'] = '3306';
$cfg['Servers'][$i]['verbose'] = 'YOUR_SERVER_NAME';
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['extension'] = 'mysql';
$cfg['Servers'][$i]['compress'] = TRUE;

其中YOUR_SERVER_NAME是在phpMyAdmin登录页面的选择框中显示的名称.如果删除此行,则整个RDS主机名将显示在选择框中(显然太长了).记住要保存config.inc.php.

which YOUR_SERVER_NAME is the name being displayed in phpMyAdmin login page's selection box. If you remove this line, the whole RDS hostname will be displayed in the selection box (which is too long, obviously). Remember to save the config.inc.php.

还有其他一些配置设置,您可以在官方文档中找到详细信息.

There are several other config settings, which you can find the details in the official documentation.

注意::另一个答案建议使用预设的用户名&自动登录.配置文件中的密码:

Note: The other answer suggests auto login with preset username & password in Config file:

$cfg['Servers'][$i]['auth_type']     = 'config';
$cfg['Servers'][$i]['user']          = '__FILL_IN_DETAILS__';
$cfg['Servers'][$i]['password']      = '__FILL_IN_DETAILS__';

如果您的phpMyAdmin公开暴露,则非常危险.您不想向所有人显示您的数据库架构,对吗?如果您确实要使用自动登录,请确保仅可通过特定IP访问phpMyAdmin.

which is extremely dangerous if your phpMyAdmin is exposed to public. You don't want to show your database schema to everyone, do you? If you really want to use automatic login, make sure your phpMyAdmin is accessible via specific IPs only.

这篇关于使用PHPMyAdmin管理Amazon RDS的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆