1.string connstrに直接サーバー名やユーザー名を記述するのは大丈夫なのか?
どういう意味の「大丈夫」か不明ですが、開発環境と運用環境では接続文字列が異なってくるでしょうから、ハードコーディングするのは好ましくないのは確かだと思います。
なので、app.config か settings ファイルに記述するのが普通だと思います。
2.データアダプタはSQLを投げたい度に作成しないとなのか?
何を作っているかによりますが、Windows Forms アプリのように DataAdapter のインスタンスをユーザーの PC に保持して作業を行う場合はそんな必要はないです。
3.dataGridView以外の方法で表示させたい場合はどうするのか?
「dataGridView以外」というと、Windows Forms アプリなら TextBox を並べて 1 レコードずつ表示することもできます。
4.サーバーの接続はデータを取得したいタイミングで接続し、データを取得したらその都度閉じるべきなのか?
DataTable + DataAdapter を使う非接続型アクセスでは、DataAdapter が自動的に接続を Open して DB よりデータを DataTable に取り込み、終わったら自動的に Close してくれますので、プログラマがそのあたりのコードを明示的に書く必要はないです。
このサーバーエクスプローラーの活用方法がイマイチわかりません。
そのあたりは何を知りたいか具体的に書いてもらえないと、範囲が広すぎて説明が難しいです。
【追記】
下の 2019/01/17 11:08 で述べた件を以下に書きます。
- の接続文字列の質問についてはセキュリティの問題も考えるということですが、以下の記事が暗号化も含めて詳しく説明していますので見てください。
接続文字列と構成ファイル
https://docs.microsoft.com/ja-jp/dotnet/framework/data/adonet/connection-strings-and-configuration-files
Windows Forms アプリで、MySQL のテーブルのレコード一覧を ADO.NET + Connector/NET を使用して DataGridView に表示し、ユーザーがそれを編集して、編集結果を MySQL に反映するということをしていると思いますが、そうであれば、一度 Visual Studio のウィザードを使って定番の構成のアプリを作ってみてはいかがでしょう?
MySQL でもウィザードは使えます。ウィザードが自動生成するコードを見れば今後の開発の参考になると思います。
DB が SQL Server の場合ですが、以下のチュートリアル、
チュートリアル : データベースへのデータの保存 (単一テーブル)
https://docs.microsoft.com/ja-jp/previous-versions/0f92s97z(v=vs.120)
10 行でズバリ !! 非接続型のデータ アクセス (ADO.NET) (C#)
https://code.msdn.microsoft.com/windowsdesktop/10-ADONET-C-cbfe7688
・・・のように Visual Studio のデータソース構成ウィザードを利用して型付 DataSet + TableAdapter を作って、それを利用してアプリを作ると、以下のページの図のような構造のアプリが、ほとんど自分でコードを書くこと無しに作れます。
Windows フォーム アプリケーションでのデータへの接続
https://docs.microsoft.com/ja-jp/previous-versions/wxt2cwcc(v=vs.120)
操作に慣れると 10 分もかからず作れるはずです。自力で一からコードを書く場合のような種々の問題に悩むことはなくなり、開発工数は激減するはずです。保守工数も減るはずです。お試しください。
データソース構成ウィザードを利用して作った .xsd ファイル
自動生成された型付 DataSet + TableAdapter のコードは .Designer.cs に含まれています。
実行結果(自分ではコードは一行も書いていません)
【注】
Visual Studio のウィザードが使う MySql.Data.dll のバージョン 6.9.8 と、GAC の MySql.Data.dll のバージョン 6.9.9 に不一致があって、それが原因でウィザードが期待通り動かないことがありました。
質問者さんの環境ではどうか分かりませんが、以下に詳しい原因と解決策が書いてありますので、目を通してください。
MySQL での TableAdapter 構成ウィザード不具合
http://surferonwww.info/BlogEngine/post/2018/02/10/tableadapter-configuration-wizard-does-not-work-properly-for-mysql.aspx