用物理手机连接flutter到sql不起作用

问题描述 投票:0回答:1

这是将我连接到 SQL 服务器的代码片段,当在普通 dart 中使用它时,它工作得很好,但是当尝试将它连接到 flutter 并在我的物理手机中使用它时,它不起作用。 我使用 MySQL Workbench 作为我的电脑中的 SQL 服务器,我创建了一个连接并使用 3306 端口指定 localhost 作为 SQL 服务器中的主机, 在我的 flutter dart 应用程序中,我将主机指定为我的电脑 IP 地址,但它给了我错误“ip 地址”不允许连接到此 MySQL 服务器。

Future<void> connect() async{
    conn = await MySqlConnection.connect(
      ConnectionSettings(
          host:computer/server ip address,
      user: my_user,
      port:3306,
      password: password,
      db: my db)
    );
  }
sql flutter dart mysql-workbench
1个回答
0
投票

您遇到的错误(“IP 地址”不允许连接到此 MySQL 服务器)通常表示出于安全原因,MySQL 服务器被配置为拒绝来自某些 IP 地址的连接。您可以采取以下几个步骤来排查和解决问题:

检查MySQL用户权限:

GRANT ALL PRIVILEGES ON your_database.* TO 'your_user'@'your_ip_address' IDENTIFIED BY 'your_password';
FLUSH PRIVILEGES;

验证IP地址格式:

Future<void> connect() async {
  conn = await MySqlConnection.connect(
    ConnectionSettings(
      host: 'your_server_ip_address',
      port: 3306,
      user: 'your_user',
      password: 'your_password',
      db: 'your_db',
    ),
  );
}
© www.soinside.com 2019 - 2024. All rights reserved.