実現したい事
Visual BasicでMySQLへのアクセスし、データを読み書きすることを考えています。
PC1(クライアント)とPC2(MySQLサーバー)の2台のPCを用意しています。
Visual Basicで作成したアプリでPC1からMySQLがインストールされたPC2へアクセスしようとしています。
下記のエラーに対して、解決方法や試した方が良いこと等、ありましたら多し下さい。
宜しくお願い致します。
発生している問題・エラーメッセージ
PC1(クライアント)からVisual Basicのプログラムで、PC2のMySQLにアクセスしようとすると下記のエラーが発生します。
MySql.Data.MySqlClient.MySqlException: 'Host 'PC1のPC名' is not allowed to connect to this MySQL server'
該当のソースコード
問題の発生する箇所のソースコードを下記致します。
mysqlCon.Open()の部分でエラーが発生します。
Visual
1Module Module1 2 Public mysqlCon As New MySqlConnection 3 Public sqlCommand As New MySqlCommand 4 5 Sub sql_st() 6 ''データベースに接続 7 8 Dim Builder = New MySqlConnectionStringBuilder() 9 ' データベースに接続するために必要な情報をBuilderに与える 10 Builder.Server = "PC2のIPアドレス" 11 Builder.SslMode = MySqlSslMode.None 12 Builder.Port = 3306 13 Builder.UserID = "root" 14 Builder.Password = "password" 15 Builder.Database = "databasename" 16 Dim ConStr = Builder.ToString() 17 18 mysqlCon.ConnectionString = ConStr 19 mysqlCon.Open() 20 21 End Sub
試したこと
PC1(クライアント)からブラウザー(Internet exproler)を使用して、
PC2のMySQLへのアクセスと利用(データの読み書き)は可能な状況です。
(ApacheとPHPを利用しています。)
また、PC1(クライアント)内にMySQL環境を構築し、下記のように記述すると問題なくMySQLが利用できます。
Visual
1Builder.Server = "localhost"
下記のようにPC1(クライアント)内に構築したMySQL環境にPC1のIPアドレスを指定してアクセスしようとすると同じエラーが発生しました。接続先の指定方法に問題がありそうです。
Visual
1Builder.Server = "PC1のIPアドレス"
補足情報(FW/ツールのバージョンなど)
PC1(クライアント)OS:Windows10 pro 64bit
PC2(MySQLサーバー)OS:Windows10 pro 64bit
Apache Ver.:2.4.41(Win64)
PHP Ver.:8.0.3
MySQL Ver.:8.0.23
Microsoft Visual Studio Community 2019 : Version 16.9.1
PC2ファイアーウォール設定:ドメインネットワーク有効
プライベートネットワーク有効
パブリックネットワーク有効
回答1件
あなたの回答
tips
プレビュー