MySQL」カテゴリーアーカイブ

独自にポートフォワード作成し、ラズパイの MySQL へ LINQ で接続する

さて、MySQL Workbench から SSH ポートフォワーディングでラズパイの MySQL へ接続できることが分かったが、じゃあ独自の C# プログラムから接続する場合はどうするのか?という問題がある。 この場合、workbench が立ててくれていた ssh を自前で建てることになる。いくつか方法があるのだけど(Putty や Tera Term で建てることもできる)、今だと Ubuntu on Windows を使って ssh を立ててしまったほうが早いみたい。 左にある緑色の SSH を自前で建てることになる。 ちょっと順番がややこしいのだけど、MySQL Workbench の設定に合わせると、 SSH Hostname: raspi3.local SSH Username: pi MySQL Hostname: localhost となる、自前で建てる SSH のポート … 続きを読む

カテゴリー: 開発, C#, MySQL | 独自にポートフォワード作成し、ラズパイの MySQL へ LINQ で接続する はコメントを受け付けていません。

LINQを使ってMySQLにアクセスする

常々、LINQ を使うために SQL Server を使う必要があって、じゃあ、Linux+MySQLの組み合わせに対して C#+LINQ はどうアクセスすればよいのか?と思っていたのだが、いつの間にか Entity Framework 相当のもの、というか MySql.Data.EntityFramework が出来ていたらしい。 MySQL :: Download Connector/Net https://dev.mysql.com/downloads/connector/net/ いきなり、Connector/Net 8.0.11 というバージョンが上がっていて(あちこちの記事は 6.x だったりするんだが)、どうやら4月頃にアップデートしている。 何ができるのというと、Redmine や WordPress の内部にある MySQL に LINQ を使って直接アクセスできるという … 続きを読む

カテゴリー: C#, MySQL | LINQを使ってMySQLにアクセスする はコメントを受け付けていません。

MySQL の謎なアップデータを止める方法

正月あたりから、真夜中に謎の黒い画像が出てきて、なんかやって止まるという現象が起きていました。謎な黒い画面ってのは cmd の画面で、なんか流れて1秒経たずに消えてしまうのでなんだか分からなかったんですよね。 それを昨晩、やっとこさ捕まえました。 どのプロセスか分からなかったのですが、 C:Program Files (x86)MySQLMySQL Installer for WindowsMySQLInstallerConsole.exe です。MySQL の何かのアップデートのようで、検索していくと MySQL :: MySQL Installer Guide :: 2.1 MySQL Product Cataloghttp://dev.mysql.com/doc/mysql-installer/en/mysql-installer-catalog.html なところでカタログのスケジ … 続きを読む

カテゴリー: MySQL | MySQL の謎なアップデータを止める方法 はコメントを受け付けていません。

MySQLでMySqlBulkLoaderのスピードをHDD/SSDで比較する

SSDにするとBlukcopyは5倍ぐらい早くなる – Moonmile Solutions Blog と MySQLでHDD/SSDのアクセススピードを比較する – Moonmile Solutions Blog の続きです。@h141gm さんから、MySqlBulkLoader もあるよ、ということなので再実験。さすがに、insert の連続では SQL Server との比較が無理があるし、insert の連続が SSD の処理に追い付いているかどうかもあやしいので、ちょっと仕切り直します。 # my.ini の値は、xampp の吊るしのまま使っています。ひとまず既製品状態でどのくらいの差がでるのかな?ってことで。チューニングするとどの位なのか?ってのも興味あるところなのですが「チューニングしなくても、SSD を換装すれば「手軽に」早くなる、ってのが理想的 … 続きを読む

カテゴリー: MySQL, パフォーマンス | MySQLでMySqlBulkLoaderのスピードをHDD/SSDで比較する はコメントを受け付けていません。

MySQLでHDD/SSDのアクセススピードを比較する

SSDにするとBlukcopyは5倍ぐらい早くなる – Moonmile Solutions Blog の比較として、MySQL では、SSD/HDD はどうなんだろうね?という話です。MySQL の Connector には Bulkcopy っぽいものがないので、ちまちまと insert しています。なので、その分遅くなるので、適当に1000件単位でトランザクション使って commit します。1件ずつ insert するよりは早いのですが、SQL Server よりは SSD 比で 10 倍ぐらい、HDD 比で 2 倍ぐらい遅いです。SSD/HDD で倍数に差がでているのは、SQL Server + SSD がむちゃくちゃ早いからですね。 追記 MySqlBulkLoader というものがあるそうなので、後で試します。 SSD で 65.3秒、HDD で 74.2秒。 S … 続きを読む

カテゴリー: MySQL, パフォーマンス | MySQLでHDD/SSDのアクセススピードを比較する はコメントを受け付けていません。

ADO.NET Entity Data Modelの接続先を動的に切り替える

LINQを使う時に、ADO.NET Entity Data Modelを作成する、ってのが今後の主流な訳ですが、Data Model を作るときの接続先をアプリケーションを実行するときに、どうやって切り替えられるのか?という問題があって…いや、知らなかっただけなんですけどね。良く見たら MSDN に書いてあったので。 ConnectionString プロパティ http://msdn.microsoft.com/ja-jp/library/system.data.entityclient.entityconnection.connectionstring.aspx 普通に作成すると、web.config/app.config に書かれるので、さてこれをどうやって実行時に変えたらいいものか?と悩むわけです。某ひと目 Azure でもかなり悩んだ。 ソースコードは MySQL 接 … 続きを読む

カテゴリー: C#, MySQL | ADO.NET Entity Data Modelの接続先を動的に切り替える はコメントを受け付けていません。

MySQL で LINQ を使う

このブログの MySQL の記事をまとめていると「あれ?意外に少ない」と気が付いて、ADO.NET 絡みでMySQLを扱うTipsでも追加しようかと探していたところなのですが、なんと、LINQ で MySQL を使えることを発見。と言いますか、「至高の技」の執筆中に確認しなかったのが痛恨の一撃。 MySQL :: MySQL 5.1 Reference Manual :: 20.2.4.5 Tutorial: Using an Entity Framework Entity as a Windows Forms Data Source http://dev.mysql.com/doc/refman/5.6/en/connector-net-tutorials-entity-framework-winform-data-source.html どうも、日本語の情報が少ないなぁと思っていたら、 … 続きを読む

カテゴリー: C#, MySQL | MySQL で LINQ を使う はコメントを受け付けていません。

DataSetを使ってMySQLを扱う場合の勘所

タイトルに「MySQL」とありますが、旧来のDataSet/DataTableを使う場合のコツ、と思ってください。 # SQL to LINQ や ADO.NET Entity Framework を使う場合は、もうちょっと別なスタイルもありです。 業務アプリケーションでデータベースを扱う場合、利用方法は次のパターンに分けられます。 <001>   データベースは次の2種類 ・更新系のテーブル  → 頻繁に更新するデータ  → 売上データ、月次データなど ・マスター系のテーブル  → ほとんど更新しないデータ  → 部門情報、会社名一覧など これを操作する画面が次の2種類 ・一般の画面  → 主に更新用のテーブルを扱う画面  → 一般ユーザーが使うので、利用しやすい画面にしないと駄目 ・マスタ画面  → 主にマスタ系のテーブルを扱う  → 保守に利用するためなので、チープ画面でよ … 続きを読む

カテゴリー: 開発, MySQL | 2件のコメント

C#からMySQLを扱う(更新編)

C#からMySQLを扱う(更新編) 射撃しながら前進(あるいは迷走)する方への援護射撃。第2弾です。 MySQLでも、SQL Serverでも、Oracleでも、データをグリッドで表示する場合は、DataSetを使うのが断然楽です。 顧客が、グリッドのチープな画面を許容してくださるならば、グリッドでOKでしょう。 こんな風に、DataTable を使って書けます。   ちなみに、DataSet で書く場合は、 何が違うかというと(これも歴史的な話になるのですが)、もともと、DataSetは、複数のテーブルを扱える設計になっています。なので、DataSetは複数のテーブルを扱うのですが、普通は上の例のように、ひとつのテーブル(検索結果)しか扱いません。 なので、 とした場合は、最初のテーブルを使う、という仕様になっているんですね。 これが、ADO.NET のバージョンで DataT … 続きを読む

カテゴリー: 開発, MySQL | 6件のコメント

C#でMySQLをDataSetで扱う

射撃しつつ前進する方への援護射撃です。 群馬に行った時、データセットの件で「う~ん」と思い、なんとなく落とし穴に陥りそうな匂いはしていたのですが、時間が取れずにそのままに。 という訳で遅ればせながら、.NET(C#)でMySQLを扱うときのコツなんかを、詳しめに書いておきます。 ■接続方法はADO.NET Driver for MySQL (Connector/NET)を使う まず、.NETから扱えるように下記をダウンロードしてインストールします。 MySQL :: Download Connector/Net http://www-jp.mysql.com/downloads/connector/net/ ■名前空間は MySql.Data.MySqlClient SQL Server の場合は System.Data.SqlClient を使いますが、MySQL の場合は MySql. … 続きを読む

カテゴリー: 開発, MySQL | 6件のコメント