c# - 关于 C# 连接到 EC2 的问题

标签 c# mysql amazon-ec2

我目前正在使用 Amazon EC2 (AMI linux) + MySQL,现在我正在研究 C# 方面的东西。

我写的代码是这样的:

        MySqlConnection DBConn = new MySqlConnection();
        DBConn.ConnectionString = "Server=ec2-**.compute-1.amazonaws.com;Database=****;uid=root;password=****;port=3306;charset=utf8";

        try
        {
            DBConn.Open();
        }
        catch (Exception ex)
        {
            MessageBox.Show("connecting fail");
        }

但出于某种原因,当我运行它时,它会生成“连接失败”错误。

我用谷歌搜索并发现我需要设置“grant all privileges *.* to root@'localhost'”

所以,我做到了!

但是还是不行。不过,我想我遵循了所有步骤。

  • 我目前正在使用 Visual Studio 2008 和 Windows7。

  • 我检查了错误,似乎是超时错误。我认为这是防火墙的事情,但不知道我应该做什么。我设置了我的安全组,所以 TCP 端口对所有人开放(包括 Mysql)。它仍然无法正常工作。这不是解决这个问题的方法吗?;( 但是,我很好奇的是,在设置安全组之前,我可以使用 MySQL 工作台访问数据库。

抱歉,我是 EC2 的新手。

最佳答案

1) 您应该通过 aws 控制台在您的服务器上打开 MySQL 端口。您可以通过单击转到 RDS 部分的数据库安全组来执行此操作,只需输入 CIDR:0.0.0.0/0 来测试您已连接并且状态已授权。然后你可以重新排列规则来指定哪个ip可以连接。
2) 你应该使用 MySQL 连接器从 C# 连接 MySQL。
Mysql Connector Link
3)你的连接字符串应该是这样的:

Server=yourdburl;
Database=yourdb; 
Uid=yourdbuser; 
Pwd=yourdbuserpassword;
charSet=utf8;

第三个似乎是正确的,你应该检查第一个和第二个案例。

关于c# - 关于 C# 连接到 EC2 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10775913/

相关文章:

c# - 有没有简单的方法来检查任何类实例的修改?

c# - Linq2Sql - 存储复杂的 Linq 查询以供将来动态执行 - 原始文本 - 可能吗?

c# - 在连接的场景中添加一个新项目, Entity Framework

javascript - php代码无法运行?没有错误信息

java - 从 hibernate select 查询获取结果计数(查询返回对象而不是 Select count(*))

php - 根据 Eloquent 另一个​​表中的列选择十大类别

c# - 第一个程序的规划和开发步骤

amazon-ec2 - 使用 ansible 通过标签启动之前停止的 EC2 实例

amazon-web-services - 使用 CloudFormation 创建和删除 EC2 实例

amazon-web-services - 无法正确停止我的 AWS EC2 实例