MySQL 5.7 の詳細なダウンロードとインストール構成、および C# MySQL データベース操作のチュートリアル

MySQL 5.7 の詳細なダウンロードとインストール構成、および C# MySQL データベース操作のチュートリアル



序文

最近、MySQL5.7 を使用するプロジェクトがあり、MySQL をインストールする際に多くの問題に遭遇しました。実際に問題の解決策がブログに多数掲載されているため、今後の参考のためにここに操作を記録します。
以下は、MySQL 5.7.43 のダウンロード、インストール、構成の詳細なチュートリアルです。


1. ダウンロード手順

公式 Web サイトにアクセスします: https://www.mysql.com/
ホームページの一番下までスクロールし、「ダウンロード」の下にある「MySQL Community サーバー」を選択します。
1
ここに画像の説明を挿入します

お使いのコンピュータのバージョンに応じて、対応する ZIP ファイルをダウンロードすることを選択してください。私のコンピュータは 64 ビットなので、これを選択してダウンロードしてください。[ダウンロード] をクリックして、次のインターフェイスに入ります。[いいえ、ダウンロードを開始します] をクリックして、何もせずに直接ダウンロード
ここに画像の説明を挿入します
ます。ログインして待つと、しばらくするとダウンロードのポップアップウィンドウが表示されます。
ここに画像の説明を挿入します
[ダウンロード] をクリックしてダウンロードを開始してください。
ここに画像の説明を挿入します

ダウンロード後、ファイルを保存先のドライブおよびディレクトリに解凍します。

以上でダウンロード作業は全て完了です。

2. 環境変数の設定

1. このコンピュータを右クリックし、[プロパティ] -> [システムの詳細設定] -> [環境変数] -> [システム環境変数] を選択します。

ここに画像の説明を挿入します

[新規] をクリックします。変数名はMYSQL_HOMEで、mysql-5.7.43-winx64 フォルダーの場所を追加します。
図に示すように、私のファイルは D:\Program Files\Mysql\mysql-5.7.43-winx64 にあります。
ここに画像の説明を挿入します
ここに画像の説明を挿入します

2.パスの編集

図に示すように、**%MYSQL_HOME%\bin** を元の値の末尾にコピーします。
ここに画像の説明を挿入します

3. my.ini ファイルを構成する

mysql-5.7.43-winx64 ディレクトリに新しい my.ini ファイルを作成します
ここに画像の説明を挿入します
。my.ini ファイルの内容は次のとおりです: インストール ディレクトリが異なる場合は、MySQL インストール パスを変更してください。


[mysqld]
#端口号
port = 3306
#mysql-5.7.43-winx64的路径
basedir=D:\Program Files\Mysql\mysql-5.7.43-winx64
#mysql-5.7.43-winx64的路径+\data
datadir=D:\Program Files\Mysql\mysql-5.7.43-winx64\data 
#最大连接数
max_connections=200
#编码
character-set-server=utf8
 
default-storage-engine=INNODB
 
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
 
[mysql]
#编码
default-character-set=utf8 

作成が完了したら、次のステップに進みます。


4.MySQLをインストールする

(1) 入力ボックスに cmd と入力し、管理者として実行します。管理者として実行する必要があることに注意してください。管理者として実行しないと、管理者権限が不十分なため、インストール プロセス中にサービスのインストール/削除エラーが発生します。拒否されました! (インストール/アンインストール サービスが拒否されました)、これは非常に重要です。
ここに画像の説明を挿入します

(2) cmd に D:\Program Files\Mysql\mysql-5.7.43-winx64\bin ディレクトリを入力します。
ここに画像の説明を挿入します

インストール コマンドを入力します: mysqld -install「サービスが正常にインストールされました」と表示された場合は、インストールが成功したことを意味します。「サービスのインストールが拒否されました」と表示された場合は、cmd が管理者権限で実行されていないことを意味します。
ここに画像の説明を挿入します

次に、コマンドmysqld --initializeの入力を続けます。この時点ではプロンプトは表示されません。
ここに画像の説明を挿入します

起動コマンドnet start mysqlを入力する前に、入力カーソルが表示されるまで待ちます。MySQLが正常に起動したことを示す次のプロンプトが表示されます
ここに画像の説明を挿入します

5.MySQLパスワードを設定する

(1) ここでパスワードを設定するのは主に問題を解決するためです: *ERROR 1045 (28000): Access Dened for user 'root'@'localhost' (usingpassword: NO)* (2) まず MySQL サービスを停止し、コマンド
ラインnet stop mysql :
ここに画像の説明を挿入します

(3) D:\Program Files\Mysql\mysql-5.7.43-winx64 ディレクトリで my.ini を見つけ、 [mysqld] フィールドの下の任意の行に Skip-grant-tables を追加して保存します異なる場合は、MySQL インストール パスを変更することを忘れないでください。
ここに画像の説明を挿入します

(4) MySQL を再起動し、起動コマンドを入力します: net start mysql . MySQL が正常に起動したことを証明する次のプロンプトが表示されます:
ここに画像の説明を挿入します
コマンドmysql -u root -pを入力してください. パスワードを入力する必要はありません. Enter キーを押すだけです:
ここに画像の説明を挿入します
MySQL への入力に成功しました! (5) mysql を使用して
コマンドラインを入力してデータベースに入ります。
ここに画像の説明を挿入します

(6) コマンドラインに「update user setauthentication_string=password(“ xxxxxx ”) where user = “root”」と入力します。

xxxxxxは設定した新しいパスワードです。Enter キーを押した後に次のメッセージが表示されれば、変更は成功です。最後のセミコロンを忘れないでください。
ここに画像の説明を挿入します
(7) MySQL サービスを手動で停止し、win10 の検索バーに「サービス」と入力して、MySQL を見つけます。右クリックして「停止」をクリックするだけです。
ここに画像の説明を挿入します

次に、 my.ini ファイルのSkip-grant-tables行を削除し、保存して閉じます。
ここに画像の説明を挿入します

(8) cmd を再度起動し (管理者として)、起動コマンドnet start mysql を入力し、mysql -u root -pを入力して、設定したパスワードを入力すると、設定が成功したことを示す次の情報が表示されます。

ここに画像の説明を挿入します

次に、 mysql を使用してコマンド ラインを入力して確認すると、結果はエラーになります。
ここに画像の説明を挿入します

パスワードがリセットされていないので、「xxxxxx」で識別される
コマンドライン alter user user() を入力してパスワードをリセットします。

私のパスワードは123456なので、「123456」で識別される alter user user() と入力し、 Enter を押します。
勝利に近づく!
コマンド ラインを入力し、mysql を再度使用して確認します。成功しました。
ここに画像の説明を挿入します

3. 環境変数の設定

1. ライブラリをインポートする

using MySql.Data.MySqlClient;
using System.Net.NetworkInformation;

2. 操作方法

  public MySqlConnection mysqlconn = null;

        public Form1()
        {
    
    
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
    
    

        }


        /// <summary>
        /// 连接Mysql数据库
        /// </summary>
        /// <param name="DatabaseName">数据库名</param>
        /// <param name="IP">IP地址</param>
        /// <param name="Username">数据库用户名</param>
        /// <param name="Password">数据库密码</param>
        /// <param name="Port">数据库端口</param>
        /// <returns></returns>
        public bool Mysqlconnect(string DatabaseName, string IP, string Username, string Password, string Port)
        {
    
    
            try
            {
    
    
                if (PingIP(IP))
                {
    
    
                    mysqlconn = new MySqlConnection("Database=" + DatabaseName + ";Data Source=" + IP + ";User Id=" + Username + ";Password=" + Password + ";pooling=false;CharSet=utf8;port=" + Port + "");
                }
                else
                {
    
    
                    return false;
                }
            }
            catch (Exception ex)
            {
    
    
                return false;
            }

            return true;
        }

        /// <summary>
        /// 往Mysql数据库中加入、删除、更改数据
        /// </summary>
        /// <param name="sql"></param>
        /// <returns></returns>
        public int setMysqlDataSet(string sql)
        {
    
    
            try
            {
    
    
                mysqlconn.Open();
                MySqlCommand ad = new MySqlCommand(sql, mysqlconn);
                int T;
                T = ad.ExecuteNonQuery();
                mysqlconn.Close();
                return T;
            }
            catch (Exception ex)
            {
    
    
                mysqlconn.Close();
                return 0;
            }
        }
        /// <summary>
        /// 读取Mysql数据库(必须先调用Mysqlconnect()传参连接数据库)
        /// </summary>
        /// <param name="sql"></param>
        /// <returns></returns>
        public DataSet getMysqlDataSet(string sql)
        {
    
    
            try
            {
    
    
                mysqlconn.Open();
                MySqlDataAdapter AD = new MySqlDataAdapter(sql, mysqlconn);
                DataSet DS = new DataSet();
                AD.Fill(DS);
                mysqlconn.Close();
                return DS;
            }
            catch (Exception ex)
            {
    
    
                mysqlconn.Close();
                return null;
            }
        }

        /// <summary>
        /// ping网络是否OK
        /// </summary>
        /// <param name="IP">IP地址</param>
        /// <returns></returns>
        public Boolean PingIP(String IP)
        {
    
    
            try
            {
    
    
                Ping ping = new Ping();
                PingReply pingreply;
                pingreply = ping.Send(IP, 900);
                Boolean result = pingreply.Status == IPStatus.Success;
                ping.Dispose();
                return result;
            }
            catch (Exception ex)
            {
    
    
                return false;
            }

        }

        public void Test()
        {
    
    
            //连接数据库
            Mysqlconnect("test", "127.0.0.1", "admin", "password", "3306");
            //插入数据库
            setMysqlDataSet("insert into test (test1,test2) values ('1','2')");

            //获取数据库
            getMysqlDataSet("select * from test");

            //修改数据库
            setMysqlDataSet("update test set test2 = '3' where test1='1'");

            //删除数据库
            setMysqlDataSet("delete from test where test1='1'");

        }

注: データベースに接続するときに PingIP() メソッドがあります。MySQL データベースがリモート サーバー上にある場合は、接続する前にリモート サーバーの IP に接続できるかどうかを確認できます。このメソッドが必要ない場合は、削除できます。

要約する

以上が今日の内容ですが、この記事ではmysqlのインストールとデータベースの操作について詳しく紹介していますので、導入方法に従ってインストールとテストを行ってください。

おすすめ

転載: blog.csdn.net/weixin_37864926/article/details/132230359