如何在树莓派上远程连接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);
}
}
}
}
它的错误“为您的地址无法获取主机名”
它有什么问题?我该如何解决它? 请帮帮我。谢谢!
答
你可以在你的conf文件中使用此
[mysqld]
skip-name-resolve
这应该治愈问题
+0
是的,它的成功。非常感谢你 – nistelrooy41001662 2014-10-31 11:11:57
有用的信息:不要硬编码的连接字符串,你可以使用'MySqlConnectionStringBuilder'类来生成它为您。相应地设置属性并确保始终获取有效的连接字符串。 – 2014-10-31 09:21:35