如何在树莓派上远程连接mysql?

问题描述:

我有树莓派IP = 192.168.137.165和我的Windows笔记本电脑有IP = 192.168.137.1 我写C#代码连接我的笔记本电脑的MySQL。如何在树莓派上远程连接mysql?

我也有RAS PI改变的my.cnf文件如下:

#bind-address = 127.0.0.1 
    bind-address = 0.0.0.0 

而且在MySQL,配置为允许来自任何IP地址的访问:

GRANT ALL PRIVILEGES ON luan_van.* TO 'root_b'@'%' IDENTIFIED BY 'root'; 
    flush privileges; 

这里我的C#代码:

using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.Threading.Tasks; 
using System.Windows.Forms; 
using MySql.Data.MySqlClient; 

namespace bp_3 
{ 
    public partial class Form1 : Form 
{ 
    public Form1() 
    { 
     InitializeComponent(); 
    } 

    private void btn_connect_Click(object sender, EventArgs e) 
    { 
     try 
     { 
      string constring = "Server=192.168.137.165;Database=luan_van;Port=3306;User ID=root_b;  Password=root"; 
      MySqlConnection conDataBase = new MySqlConnection(constring); 
      MySqlDataAdapter myData = new MySqlDataAdapter(); 
      myData.SelectCommand = new MySqlCommand("select * from tt_nhanvien;", conDataBase); 
      MySqlCommandBuilder cb = new MySqlCommandBuilder(myData); 
      conDataBase.Open(); 
      MessageBox.Show("Connect"); 
      conDataBase.Close(); 
     } 
     catch (Exception ex) 
     { 
      MessageBox.Show(ex.Message); 
     } 
    } 
} 
} 

它的错误“为您的地址无法获取主机名”

它有什么问题?我该如何解决它? 请帮帮我。谢谢!

+1

有用的信息:不要硬编码的连接字符串,你可以使用'MySqlConnectionStringBuilder'类来生成它为您。相应地设置属性并确保始终获取有效的连接字符串。 – 2014-10-31 09:21:35

你可以在你的conf文件中使用此

[mysqld] 
skip-name-resolve 

这应该治愈问题

+0

是的,它的成功。非常感谢你 – nistelrooy41001662 2014-10-31 11:11:57