|
分類:[データベース全般]
2023/03/11(Sat) 14:11:45 編集(投稿者) 2023/03/11(Sat) 14:11:35 編集(投稿者)
vb.net でサーバーに接続するフォームアプリを作成しています。 環境は以下の通りです。
サーバー側 OS : Ubuntu Server 18.040.1 LTS / dbms : MySQL version 5.7.41 クライアント側 OS : Windows10 / アプリ作成 VB.NET (Visual Studio 2019) サーバー機とクライアント機は同一 LAN 内にある。
問題は以下の通りです。
アプリをデバックモードで起動し DB に接続していましたが、 突然、DB がアプリからの参照を拒否するようになり困っています。
いままでは、問題なく操作出来ていたので、状況が理解できません。
DBの操作はMySQL Workbench を使ってクライアント機より行っているのですが、 左のNavigator ペインのスキーマの所で今までは
・******(スキーマ名) ・Tables ・Views ・Stored Procedures ・Functions
となっていたのが("・"は、展開する三角マークの代用)
・******(スキーマ名) ・Tables could not be fetched ・Views could not be fetched ・Stored Procedures could not be fetched ・Functions could not be fetched
となって、”あれっ” と思ったのですが、それ以来の症状です。 (変化したタイミングはわかりません。)
アプリよりsqlを発行すると例外で落ちます。 例外のコメントは次の通りです。
<MySql.Data.MySqlClient.MySqlException: 'View '*****db.*****' references invalid table(s) or column(s) or function(s) or definer/invoker of view lack rights to use them'> (権限のエラーらしい。)
アプリ内でのDB接続に関連する記述は次のようです。 Imports MySql.Data.MySqlClient ------------------------------------------------------- Public Class ******* Friend cnstr As String = "server=192.168.10.**;" & "database = ****;" & "userid=****;" & "password=****"
------------------------------------------------------- Sub New()
'初期データの取得
Dim sqlcn As New MySqlConnection(cnstr) Dim sqlcmd As MySqlCommand = sqlcn.CreateCommand Dim adp As New MySqlDataAdapter(sqlcmd) Dim dtbl As New DataTable
sqlcmd.CommandText = "SQL statement" sqlcn.Open() adp.Fill(dtbl)
-------------------------------------------------------
そういえば、Workbench でファンクションを編集している時、 妙にキャレットがちかちかするなと感じました。 作業には影響なくファンクションの修正やテストも出来ていたので あまり気にせず作業していました。 (何かアップデートされたりして、それに対応できていないのでしょうか。)
状況と対処方 御呈示頂けませんでしょうか。
|