<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Square MI &#187; MySQL</title>
	<atom:link href="http://www.square-mi.com/wp/category/database/mysql/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.square-mi.com/wp</link>
	<description>oracle, php, java, etc... technical memo &#38; つれづれなこと</description>
	<lastBuildDate>Tue, 12 Feb 2013 12:22:08 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5</generator>
		<item>
		<title>MySQLをインストールし、.NET 接続する。</title>
		<link>http://www.square-mi.com/wp/194/mysql%e3%82%92%e3%82%a4%e3%83%b3%e3%82%b9%e3%83%88%e3%83%bc%e3%83%ab%e3%81%97%e3%80%81-net-%e6%8e%a5%e7%b6%9a%e3%81%99%e3%82%8b%e3%80%82/?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=mysql%25e3%2582%2592%25e3%2582%25a4%25e3%2583%25b3%25e3%2582%25b9%25e3%2583%2588%25e3%2583%25bc%25e3%2583%25ab%25e3%2581%2597%25e3%2580%2581-net-%25e6%258e%25a5%25e7%25b6%259a%25e3%2581%2599%25e3%2582%258b%25e3%2580%2582</link>
		<comments>http://www.square-mi.com/wp/194/mysql%e3%82%92%e3%82%a4%e3%83%b3%e3%82%b9%e3%83%88%e3%83%bc%e3%83%ab%e3%81%97%e3%80%81-net-%e6%8e%a5%e7%b6%9a%e3%81%99%e3%82%8b%e3%80%82/#comments</comments>
		<pubDate>Fri, 19 Oct 2012 08:58:43 +0000</pubDate>
		<dc:creator>commerce</dc:creator>
				<category><![CDATA[MySQL]]></category>
		<category><![CDATA[データベース]]></category>

		<guid isPermaLink="false">http://www.square-mi.com/wp/?p=194</guid>
		<description><![CDATA[ずっと前、少しだけ MySQL を使ったことはあったのですが、もう殆ど忘れていました。Linux にインストールするところから Visual Studio 2008 のサーバーエクスプローラーを使ってリモートからデータ接 &#8230; <a href="http://www.square-mi.com/wp/194/mysql%e3%82%92%e3%82%a4%e3%83%b3%e3%82%b9%e3%83%88%e3%83%bc%e3%83%ab%e3%81%97%e3%80%81-net-%e6%8e%a5%e7%b6%9a%e3%81%99%e3%82%8b%e3%80%82/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<p>ずっと前、少しだけ MySQL を使ったことはあったのですが、もう殆ど忘れていました。Linux にインストールするところから Visual Studio 2008 のサーバーエクスプローラーを使ってリモートからデータ接続を行うまでの記録です。</p>
<p>環境は、サーバーが、</p>
<p style="padding-left: 30px">CentOS 6.2 x86_64</p>
<p style="padding-left: 30px">MySQL 5.1.61</p>
<p>クライアントが、</p>
<p style="padding-left: 30px">Windows 7 Ultimate SP1 32bit</p>
<p style="padding-left: 30px">Visual Studio 2008 Professional Edition SP1</p>
<p style="padding-left: 30px">.Net Framework 3.5 SP1</p>
<p style="padding-left: 30px">MySQL Connector/Net 6.5.4</p>
<h2>サーバー側</h2>
<h3>MySQLのインストール</h3>
<p style="padding-left: 30px">あまり時間もなかったので、最も簡単なGNOMEデスクトップからGUIによるインストールを行いました。一応手順を記述します。</p>
<ol>
<li>
<h3>メニューから[システム]-[管理]-[ソフトウェアのの追加／削除]をクリックします。</h3>
</li>
<li>左側ツリーから<br />
Database<br />
┗MySQLデータベースサーバー<br />
を選択すると右側に現れる<br />
mysql-server-5.1.61-4.el6(x86_64)にチェックし[適用]ボタンをクリックします。</li>
<li>指示に従いインストールを続けます。<br />
以下が自動で追加インストールされます。<br />
・perl-DBD-MySQL-4.013-3.el6(x86_64)<br />
・perl-DBl-1.609-4.el6(x86_64)<br />
・mysql-libs-5.1.61-4.el6(x86_64)<br />
・mysql-5.1.61-4.el6(x86_64)</li>
<li>インストールが終わったら、言語セットをUTF8に設定します。<br />
キャラクタセットをUTF8に設定するために &#8220;/etc/my.cnf&#8221; を編集します。</p>
<pre class="brush: bash; light: true; title: ; notranslate">
[mysqld]
default-character-set=utf8
character-set-server=utf8
[client]
default-character-set=utf8
</pre>
<ul>
<li>[mysqld]の中に &#8220;default-character-set=utf8&#8243; と<br />
&#8220;character-set-server=utf8&#8243; を追加します。</li>
<li>[client]を追加し、その中に &#8220;default-character-set=utf8&#8243; を追加します。</li>
</ul>
</li>
<li>OSの起動時、サービスが自動起動するようにします。(userは、root)<br />
※ここからは、ターミナルからキャラクタベースでコマンド入力します。</p>
<pre class="brush: bash; light: true; title: ; notranslate">$ chkconfig mysqld on</pre>
</li>
<li>確認
<pre class="brush: bash; light: true; title: ; notranslate">$ chkconfig --list mysqld
mysqld  0:off 1:off 2:on  3:on  4:on  5:on  6:off
</pre>
<p>→ 2,3,4,5 が on になっていることを確認します。</li>
<li>サービスの手動制御コマンド
<pre class="brush: bash; light: true; title: ; notranslate">$ /etc/rc.d/init.d/mysqld start</pre>
<p style="font-family: ＭＳ　ゴシック;font-size: 14px;text-decoration: none">【引数説明】<br />
start　　　　　　　…　開始<br />
stop　　　　　　　…　停止<br />
status　　　　　　…　実行状態を表示<br />
restart　　　　　　…　stop, start を順に実行<br />
condrestart　　　…　動作していれば停止し、再起動する</p>
</li>
</ol>
<h3>DBユーザの作成</h3>
<ul>
<li>rootユーザで実施しました。<br />
db_user というDBユーザーを作成します。</p>
<pre class="brush: bash; light: true; title: ; notranslate">
$mysql
mysql&gt; grant select,insert,delete,update,create,drop,file,alter,index on *.* to db_user@'%' identified by 'password';
mysql&gt; grant select,insert,delete,update,create,drop,file,alter,index on *.* to db_user@'localhost' identified by 'password';</pre>
</li>
<li>最初、上の行(to db_user@&#8217;%')を実施したのですが、ssh接続したターミナルからdb_userで接続できなかったため下の行(db_user@&#8217;localhost&#8217;)を実施しました。これでよかったのかどうかはわかりませんが結果オーライでここに記述します。</li>
</ul>
<h3>データベースの作成</h3>
<ol>
<li>データベースの確認<br />
db_user というDBユーザーで接続します。Linux User は、root 権限のない普通のユーザーで実施しています。</p>
<pre class="brush: bash; light: true; title: ; notranslate">
$ mysql -u db_user -p

mysql&gt; show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| test               |
+--------------------+
</pre>
</li>
<li>データベースの作成<br />
user_db というデータベースを作成します。</p>
<pre class="brush: bash; light: true; title: ; notranslate">
mysql&gt; create database user_db;</pre>
</li>
<li>データベースの確認<br />
ちゃんとできているか確認します。最後に &#8220;user_db&#8221; <span style="color: #444444;line-height: 23px">の一行が追加されているのでOK.</span></p>
<pre class="brush: bash; light: true; title: ; notranslate">mysql&gt; show databases
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| test               |
| user_db            |
+--------------------+
mysql&gt; exit
</pre>
</li>
<li>言語セットの確認<br />
作成したデータベースの言語セットがUTF8になっていることを確認します。<br />
作成したデータベースにログインするため、一旦 &#8220;\q&#8221; で mysql インタプリタを抜けてから以下を実行します。</p>
<pre class="brush: bash; light: true; title: ; notranslate">
$ mysql -u db_user -D user_db -p
mysql&gt; show variables like &quot;char%&quot;;
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |
| character_set_database   | utf8                       |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | utf8                       |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)
</pre>
</li>
</ol>
<h3>テスト用テーブルの作成</h3>
<ul>
<li>DBユーザ db_user で、データベース user_db に接続し、テスト用のダミーテーブル test_tbl を作成します。
<pre class="brush: bash; light: true; title: ; notranslate">
$ mysql -u db_user -D user_db -p
mysql&gt; create table test_tbl (
    -&gt; id INT NOT NULL AUTO_INCREMENT,
    -&gt; title VARCHAR(10) NOT NULL,
    -&gt; update_date DATE,
    -&gt; PRIMARY KEY (id)
    -&gt; );
</pre>
</li>
</ul>
<h2>クライアント側</h2>
<p style="padding-left: 30px">.NET で接続したいので、MySQL用データプロバイダーを入手し、Visual Studio から、作成したデータベースに接続し、テスト用のテーブルにデータを挿入してみる。</p>
<h3 style="padding-left: 30px">ダウンロード＆ データプロバイダのインストール</h3>
<ol>
<li><a title="dev.mysql.com" href="http://dev.mysql.com/downloads/">http://dev.mysql.com/downloads/</a> の <a href="http://dev.mysql.com/downloads/connector/net/">Connector/Net</a> をクリックしジャンプしたページの　Windows (x86, 32-bit), MSI Installer [Download] をダウンロードする。</li>
<li>ダウンロードした msi ファイルを実行、ウィザードに従い、インストール</li>
<li>Visual Studio 2008 &#8211; サーバーエクスプローラー を開き、データ接続の上で右クリック</li>
<li>コンテキストメニューから [接続の追加] を選択</li>
<li>接続の追加ダイアログにて、サーバー名(またはIP)、ユーザー名／パスワード、データベース名を入力し、[テスト接続] をクリックし、接続を確認。<br />
<a href="http://www.square-mi.com/wp/194/mysql%e3%82%92%e3%82%a4%e3%83%b3%e3%82%b9%e3%83%88%e3%83%bc%e3%83%ab%e3%81%97%e3%80%81-net-%e6%8e%a5%e7%b6%9a%e3%81%99%e3%82%8b%e3%80%82/mysql-vsnet-settings/" rel="attachment wp-att-211"><img class="alignnone  wp-image-211" src="http://www.square-mi.com/wp/wp-content/uploads/mysql-vsnet-settings.png" alt="" width="277" height="312" /></a></li>
<li>接続確認がOKなら、言語セットをUTF8に設定するため、[詳細設定(V)]のボタンをクリック<br />
<a href="http://www.square-mi.com/wp/194/mysql%e3%82%92%e3%82%a4%e3%83%b3%e3%82%b9%e3%83%88%e3%83%bc%e3%83%ab%e3%81%97%e3%80%81-net-%e6%8e%a5%e7%b6%9a%e3%81%99%e3%82%8b%e3%80%82/mysql-vsnet-detail/" rel="attachment wp-att-258"><img class="alignnone  wp-image-258" src="http://www.square-mi.com/wp/wp-content/uploads/mysql-vsnet-detail.png" alt="" width="251" height="346" /></a><br />
詳細プロパティダイアログにて、Character Set の内容を &#8220;utf8&#8243; に設定。後は[OK]クリックでVS2008 サーバーエクスプローラーに戻る。<br />
※このとき、必ず &#8220;utf8&#8243; は、小文字で入力してください。
</li>
<li>Server Name に指定したサーバー名(例ではcentos6)でツリーが構成される。テスト用テーブル &#8220;test_tbl&#8221; をダブルクリックすると、デザインモードで開かれ、また右クリックして「データの取得」を選択するとグリッドがオープンされ、データを挿入したり、修正したり加工ができる。<br />
<a href="http://www.square-mi.com/wp/194/mysql%e3%82%92%e3%82%a4%e3%83%b3%e3%82%b9%e3%83%88%e3%83%bc%e3%83%ab%e3%81%97%e3%80%81-net-%e6%8e%a5%e7%b6%9a%e3%81%99%e3%82%8b%e3%80%82/vs-svrexplorer-connect/" rel="attachment wp-att-213"><img class="alignnone  wp-image-213" src="http://www.square-mi.com/wp/wp-content/uploads/vs-svrexplorer-connect.png" alt="" width="201" height="204" /></a></li>
</ol>
]]></content:encoded>
			<wfw:commentRss>http://www.square-mi.com/wp/194/mysql%e3%82%92%e3%82%a4%e3%83%b3%e3%82%b9%e3%83%88%e3%83%bc%e3%83%ab%e3%81%97%e3%80%81-net-%e6%8e%a5%e7%b6%9a%e3%81%99%e3%82%8b%e3%80%82/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
