C#과 사쿠라 렌탈 서버 MySQL을 연결하는 DB
C# + 사쿠라 렌탈 서버 + MySQL 연결
참고 이미지
우선 코드
public static string getDB()
{
// さくらのホスト名
string host = "iiiiii.sakura.ne.jp";
// さくらユーザー名
string user = "iiiiii";
// パスワード
string Spassword = "password";
// SSH接続
var sshClient = new SshClient(host, 22, user, Spassword);
sshClient.Connect();
uint dbPort = 3306;
uint localPort = 3306;
//データベースのデータベースの名前とユーザー名
string dbname = "DBname";
string dbuser = "DBuser";
string dbpassword = "Dpassword" ;
//mysql0000.dbのやつ
string serverName = "mysql1018.db.sakura.ne.jp";
//サーバーフォワーディング
var sshForward = new ForwardedPortLocal("127.0.0.1", localPort, serverName, dbPort);
sshClient.AddForwardedPort(sshForward);
sshForward.Start();
var connectStr = "server=" + "127.0.0.1" + ";";
connectStr += "port=" + dbport + ";";
connectStr += "user=" + DBuser + ";";
connectStr += "password=" + Dpassword + ";";
connectStr += "database=" + dbname + ";";
connectStr += "Pooling = False";
string table = "testtb";
//ここにSQL文を書く
var sql = "SELECT * FROM " + table;
string res = null;
//MySQLサーバー接続
using (var connection = new MySqlConnection(connectStr))
using (var com = new MySqlCommand(sql, connection))
{
connection.Open();
var selectCmd = new MySqlCommand(sql, connection);
// 実行
MySqlDataReader selectResult = selectCmd.ExecuteReader();
// MySqlDataReaderというクラスに結果が入っている
// Read()を呼ぶことで次の行にアクセスする
while (selectResult.Read())
{
var name = selectResult.GetString("name"); // フィールド名でのアクセス
string data = selectResult.GetString(1); // カラムインデックスでのアクセス
if(name != "")
{
//ここでいい感じに処理
res += String.Format("{0}${1}\n", name, data);
}
}
// 結果を閉じる
selectResult.Close();
connection.Close();
sshForward.Stop();
sshClient.Disconnect();
return res;
}
}
된다. 힘내자
참고 URL
거의 이쪽의 내용입니다
htps : // 코 m / s 쿠로 마쿠 / ms / 67 46962228 3 3 c6d7c
우선 이쪽을 참고로 Teraterm으로 접속하는 편이 좋을지도
htps //w w. 오, t48. 코 m/아 r치ゔぇs/2495/
Reference
이 문제에 관하여(C#과 사쿠라 렌탈 서버 MySQL을 연결하는 DB), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/Masacccch/items/4152ff013d0fc429e650
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
public static string getDB()
{
// さくらのホスト名
string host = "iiiiii.sakura.ne.jp";
// さくらユーザー名
string user = "iiiiii";
// パスワード
string Spassword = "password";
// SSH接続
var sshClient = new SshClient(host, 22, user, Spassword);
sshClient.Connect();
uint dbPort = 3306;
uint localPort = 3306;
//データベースのデータベースの名前とユーザー名
string dbname = "DBname";
string dbuser = "DBuser";
string dbpassword = "Dpassword" ;
//mysql0000.dbのやつ
string serverName = "mysql1018.db.sakura.ne.jp";
//サーバーフォワーディング
var sshForward = new ForwardedPortLocal("127.0.0.1", localPort, serverName, dbPort);
sshClient.AddForwardedPort(sshForward);
sshForward.Start();
var connectStr = "server=" + "127.0.0.1" + ";";
connectStr += "port=" + dbport + ";";
connectStr += "user=" + DBuser + ";";
connectStr += "password=" + Dpassword + ";";
connectStr += "database=" + dbname + ";";
connectStr += "Pooling = False";
string table = "testtb";
//ここにSQL文を書く
var sql = "SELECT * FROM " + table;
string res = null;
//MySQLサーバー接続
using (var connection = new MySqlConnection(connectStr))
using (var com = new MySqlCommand(sql, connection))
{
connection.Open();
var selectCmd = new MySqlCommand(sql, connection);
// 実行
MySqlDataReader selectResult = selectCmd.ExecuteReader();
// MySqlDataReaderというクラスに結果が入っている
// Read()を呼ぶことで次の行にアクセスする
while (selectResult.Read())
{
var name = selectResult.GetString("name"); // フィールド名でのアクセス
string data = selectResult.GetString(1); // カラムインデックスでのアクセス
if(name != "")
{
//ここでいい感じに処理
res += String.Format("{0}${1}\n", name, data);
}
}
// 結果を閉じる
selectResult.Close();
connection.Close();
sshForward.Stop();
sshClient.Disconnect();
return res;
}
}
Reference
이 문제에 관하여(C#과 사쿠라 렌탈 서버 MySQL을 연결하는 DB), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/Masacccch/items/4152ff013d0fc429e650텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)