Tôi đặt trình kết nối mysql ở đâu?

Một doanh nghiệp đang phát triển luôn gặp khó khăn trong việc xử lý và xử lý hiệu quả khối lượng dữ liệu tăng theo cấp số nhân. Điều này đòi hỏi một giải pháp tất cả trong một mạnh mẽ, có khả năng mở rộng, hiệu quả, đáng tin cậy và an toàn. MySQL là một Hệ thống quản lý cơ sở dữ liệu quan hệ nguồn mở mạnh mẽ, cung cấp hỗ trợ SQL tiêu chuẩn đầy đủ để nhanh chóng truy vấn, thao tác và thêm dữ liệu vào Bảng MySQL của bạn

Để phát triển kết nối với cơ sở dữ liệu và bắt đầu truy vấn dữ liệu, bạn có thể sử dụng MySQL Connector NET. Nó là Nhà cung cấp dữ liệu được quản lý hoàn toàn cho phép bạn tạo. NET yêu cầu Kết nối dữ liệu hiệu suất cao và an toàn với MySQL

Trong bài viết này, bạn sẽ học cách thiết lập và sử dụng MySQL Connector NET một cách hiệu quả.

Mục lục

  • MySQL là gì?
    • Các tính năng chính của MySQL
  • Mạng kết nối MySQL là gì?
  • Phiên bản MySQL Connector NET nào được hỗ trợ?
  • Làm cách nào để quản lý nhóm kết nối trong Trình kết nối/NET?
  • Làm cách nào để sử dụng Mạng kết nối MySQL?
    • Cài đặt MySQL Connector NET
    • Tạo một kết nối NET MySQL Connector
    • Truy xuất dữ liệu
  • Lỗi kết nối trong C# và Visual Basic. Làm thế nào để xử lý chúng
  • Plugin và Phương thức Xác thực Trình kết nối/NET là gì?
  • Sự kết luận

MySQL là gì?

MySQL là một hệ thống quản lý cơ sở dữ liệu quan hệ mã nguồn mở phổ biến. Dữ liệu MySQL được lưu trữ trong các bảng bao gồm các hàng và cột. Được giới thiệu vào năm 1995, MySQL được phát triển, phân phối và duy trì hoàn toàn bởi Tập đoàn Oracle. Nhìn qua khía cạnh kỹ thuật, MySQL được viết bằng ngôn ngữ C và C++. MySQL tương thích với nhiều nền tảng như Microsoft Windows, Oracle Solaris, AIX, Symbian, Linux và macOS. Bạn có thể sử dụng các lệnh SQL để truy xuất, thay đổi hoặc thêm dữ liệu từ các bảng MySQL của mình. MySQL cũng là một thành phần quan trọng của ngăn xếp LAMP hiện đại, bao gồm Hệ điều hành dựa trên Linux, Máy chủ web Apache, Cơ sở dữ liệu MySQL và PHP để xử lý

SQL cũng có thể được sử dụng để xác định lược đồ bảng hoặc thậm chí định cấu hình mối quan hệ giữa các bảng trong cơ sở dữ liệu. Giao diện người dùng đồ họa phía máy khách như MySQL WorkBench, SequelPro hoặc DBVisualizer có thể được sử dụng để nhập các lệnh SQL và máy chủ sẽ phản hồi với thông tin được yêu cầu. Bạn thậm chí có thể thiết lập kết nối với cơ sở dữ liệu bằng MySQL Connector NET và truy vấn dữ liệu. MySQL cũng cung cấp phiên bản Enterprise trả phí bao gồm các dịch vụ hỗ trợ cao cấp và một số tiện ích mở rộng có thể được cài đặt dưới dạng Plugin máy chủ

Các tính năng chính của MySQL

MySQL được sử dụng rộng rãi bởi các tổ chức như Facebook, Flickr, Twitter, Wikipedia và YouTube. Điều này là do tập hợp các tính năng bắt mắt sau đây của MySQL.  

  • Dê hoạt động. Với MySQL, bạn có thể làm việc với nhiều ngôn ngữ lập trình khác nhau như PHP, PERL, C, C ++ và JAVA. Nó cũng cung cấp một bộ công cụ trực quan để đơn giản hóa các tác vụ tốn thời gian như Quản lý máy chủ, Báo cáo và Phân tích dữ liệu. Cho phép bạn làm việc với phạm vi bộ dữ liệu rộng hơn, MySQL cung cấp hỗ trợ đầy đủ cho một số cấu trúc Dữ liệu, dữ liệu JSON và Không gian địa lý, cũng như các loại dữ liệu Lô-gic, Số, Chữ và Số, Ngày và Giờ
  • Hiệu suất hạng nhất. MySQL mang lại hiệu suất truy vấn tốt nhất trong lớp trên nhiều máy chủ được nhóm lại. Nó cung cấp một tiện ích tải nhanh với bộ nhớ cache riêng biệt và phân vùng chỉ mục bảng. MySQL cũng có thể xử lý hiệu quả khối lượng công việc dao động và xử lý khối lượng dữ liệu lớn ở tốc độ tối ưu. Điều này cho phép bạn lưu trữ hơn 50 triệu hàng dữ liệu trong một bảng với giới hạn kích thước tệp mặc định của bảng là 4 GB. Tuy nhiên, tùy thuộc vào cấu hình của hệ điều hành, mức này có thể tăng lên giới hạn lý thuyết là 8 triệu terabyte (TB).  
  • Mã nguồn mở. MySQL có Giấy phép Công cộng GNU (GPL), có nghĩa là nó sẽ luôn được cung cấp miễn phí. Nó cung cấp cho bạn sự tự do để tùy chỉnh nó trên cơ sở mã MySQL mã nguồn mở của Oracle dựa trên nhu cầu của bạn. Vì nó là một phần mềm Nguồn mở, nên một cộng đồng lớn đã phát triển thường xuyên làm phong phú thêm tài liệu của MySQL và văn hóa hỗ trợ trực tuyến của nó
  • bản địa hóa. Để thân thiện với người dùng, MySQL hỗ trợ nhiều bộ ký tự, bao gồm latin1 (cp1252), tiếng Đức, big5, ujis, v.v. Bạn cũng có thể đặt ngôn ngữ thông báo lỗi mà máy chủ cung cấp cho máy khách. Thời gian máy chủ MySQL cũng có thể được thay đổi linh hoạt với khả năng đặt múi giờ cụ thể cho từng khách hàng
  • Bảo mật dữ liệu. MySQL cung cấp cho bạn toàn quyền kiểm soát cài đặt Kiểm soát truy cập dữ liệu. Các cơ chế mạnh mẽ như Hệ thống đặc quyền truy cập và Quản lý tài khoản người dùng cho phép bạn điều chỉnh ai có thể xem hoặc sử dụng dữ liệu MySQL của bạn. MySQL đặt tiêu chuẩn cao nhất với Xác minh dựa trên máy chủ và Mã hóa mật khẩu

MySQL Connector NET là gì?

MySQL Connector NET là một ADO được quản lý hoàn toàn. NET (Activex Data Object Network Enable Technologies) Nhà cung cấp dữ liệu. Nhà cung cấp dữ liệu nói chung được sử dụng để thiết lập kết nối với cơ sở dữ liệu, chạy lệnh và truy xuất dữ liệu. Tương tự, MySQL Connector NET cho phép bạn xây dựng. NET yêu cầu kết nối dữ liệu hiệu suất cao và an toàn với MySQL. Được viết hoàn toàn bằng C#, MySQL Connector NET thực thi ADO cần thiết. NET và tích hợp chúng vào ADO. công cụ nhận biết NET

Nó sửa đổi Entity Framework Core để hoạt động với dữ liệu MySQL và tạo điều kiện nén trong. triển khai trình điều khiển NET. MySQL Connector NET cũng mở rộng hỗ trợ đa nền tảng đầy đủ cho Linux và macOS. Bạn có thể dễ dàng chạy MySQL Connector NET với Microsoft Visual Studio. Hiện tại, Trình kết nối MySQL NET 8. 0 đang chạy, đây là phần tiếp theo của Connector NET 7. 0. Phiên bản cũ hơn tôi. e. Trình kết nối MySQL NET 6. 10 đã hết dịch vụ. Bạn có thể xem Ghi chú phát hành NET của Trình kết nối MySQL để theo dõi các sửa đổi và tính năng có sẵn trong các phiên bản khác nhau.   

Đơn giản hóa MySQL ETL bằng Đường ống dữ liệu không mã của Hevo

Dữ liệu Hevo là Đường ống dữ liệu không có mã cung cấp giải pháp được quản lý hoàn toàn để thiết lập Tích hợp dữ liệu cho hơn 100 nguồn dữ liệu (Bao gồm hơn 40 nguồn miễn phí) và sẽ cho phép bạn tải trực tiếp dữ liệu từ các nguồn như MySQL đến Kho dữ liệu hoặc Đích . Hevo cũng hỗ trợ MySQL làm Đích để tải Dữ liệu vào đó. Nó sẽ tự động hóa luồng dữ liệu của bạn trong vài phút mà không cần viết bất kỳ dòng mã nào. Kiến trúc chịu lỗi của nó đảm bảo rằng dữ liệu của bạn được an toàn và nhất quán. Hevo cung cấp cho bạn một giải pháp thực sự hiệu quả và hoàn toàn tự động để quản lý dữ liệu theo thời gian thực và luôn có sẵn dữ liệu để phân tích.  

Bắt đầu với Hevo miễn phí

Cùng điểm qua một số tính năng nổi bật của Hevo

  • Được quản lý hoàn toàn. Nó không yêu cầu quản lý và bảo trì vì Hevo là một nền tảng hoàn toàn tự động
  • Chuyển đổi dữ liệu. Nó cung cấp một giao diện đơn giản để hoàn thiện, sửa đổi và làm giàu dữ liệu bạn muốn chuyển.  
  • Thời gian thực. Hevo cung cấp di chuyển dữ liệu theo thời gian thực. Vì vậy, dữ liệu của bạn luôn sẵn sàng để phân tích
  • Quản lý lược đồ. Hevo có thể tự động phát hiện lược đồ của dữ liệu đến và ánh xạ nó tới lược đồ đích
  • kết nối. Hevo hỗ trợ hơn 100 Tích hợp cho các nền tảng SaaS như WordPress, FTP/SFTP, Tệp, Cơ sở dữ liệu, công cụ BI và API REST gốc & Trình kết nối Webhooks. Nó hỗ trợ nhiều điểm đến khác nhau bao gồm Google BigQuery, Amazon Redshift, Snowflake, Firebolt, Data Warehouses; .   
  • Chắc chắn. Hevo có kiến ​​trúc chịu lỗi đảm bảo rằng dữ liệu được xử lý một cách an toàn, nhất quán và không bị mất dữ liệu
  • Hevo được xây dựng để mở rộng quy mô. Khi số lượng nguồn và khối lượng dữ liệu của bạn tăng lên, Hevo sẽ mở rộng quy mô theo chiều ngang, xử lý hàng triệu bản ghi mỗi phút với rất ít độ trễ
  • Giám sát trực tiếp. Giám sát nâng cao cung cấp cho bạn chế độ xem một cửa để theo dõi tất cả các hoạt động diễn ra trong Đường ống dữ liệu
  • Hỗ trợ trực tuyến. Nhóm Hevo luôn sẵn sàng mở rộng hỗ trợ đặc biệt cho khách hàng của mình thông qua trò chuyện, email và các cuộc gọi hỗ trợ
Đăng ký tại đây để dùng thử miễn phí 14 ngày

Phiên bản MySQL Connector NET nào được hỗ trợ?

Connector/Net có sẵn trong một số phiên bản

  • mysql 5. 7, 5. 6, 5. 5, 5. 1 và 5. 0 được hỗ trợ bởi Connector/Net 6. 7. Hỗ trợ Entity Framework 5, cân bằng tải tích hợp (được sử dụng với phần phụ trợ triển khai Sao chép MySQL hoặc Phân cụm MySQL), ứng dụng khách Memcached (tương thích với plugin Memcached của Innodb) và hỗ trợ Windows Runtime (WinRT) để ghi lưu trữ . Phiên bản này cũng loại bỏ tất cả các tính năng Tích hợp Visual Studio, hiện có sẵn dưới dạng MySQL cho Visual Studio
  • Máy chủ MySQL 5. 7, 5. 6, 5. 5, 5. 1 và 5. 0 đều được hỗ trợ bởi Connector/Net 6. 6. Gỡ lỗi thủ tục được lưu trữ trong Microsoft Visual Studio, hỗ trợ xác thực có thể cắm, bao gồm khả năng viết các plugin xác thực của riêng bạn, Entity Framework 4. Hỗ trợ 3 Code First và các cải tiến đối với hỗ trợ tin cậy một phần để cho phép dịch vụ lưu trữ triển khai ứng dụng mà không cần cài đặt thư viện Trình kết nối/Net trong GAC chỉ là một số tính năng mới đáng chú ý
  • Máy chủ MySQL 5. 7, 5. 6, 5. 5, 5. 1 và 5. 0 đều được hỗ trợ bởi Connector/Net 6. 5. Các lớp chặn cho các ngoại lệ và lệnh, hỗ trợ cho MySQL 5. 6 giây phân số, hỗ trợ tin cậy một phần tốt hơn và IntelliSense được cải thiện, bao gồm tự động hoàn thành khi chỉnh sửa các thủ tục được lưu trữ hoặc. các tệp mysql, chỉ là một vài trong số các tính năng mới
  • Máy chủ MySQL 5. 6, 5. 5, 5. 1 và 5. 0 được hỗ trợ bởi Connector/Net 6. 4. Hỗ trợ xác thực Windows (khi kết nối với MySQL Server 5. 5+), bộ nhớ đệm bảng phía máy khách, hỗ trợ chuyển đổi dự phòng kết nối đơn giản và tạo SQL được cải thiện từ nhà cung cấp Entity Framework đều là những tính năng mới. Trình kết nối/Mạng phiên bản 1. 0 không còn được hỗ trợ
  • Máy chủ MySQL 5. 6, 5. 5, 5. 1 và 5. 0 được hỗ trợ bởi Connector/Net 6. 3. Tích hợp với Visual Studio 2010, cũng như tính khả dụng của mẫu DDL T4 cho Entity Framework và MySQL SQL Editor tùy chỉnh, đều là những tính năng mới đáng chú ý. Phạm vi giao dịch được tái cấu trúc là một tính năng mới khác. Trình kết nối/Mạng hiện hỗ trợ các giao dịch lồng nhau trong phạm vi mà tất cả chúng đều sử dụng cùng một chuỗi kết nối. Phiên bản Trình kết nối/Net này không còn được hỗ trợ
  • Máy chủ MySQL 5. 6, 5. 5, 5. 1, 5. 0 và 4. 1 đều được hỗ trợ bởi Connector/Net 6. 2. Một hệ thống ghi nhật ký mới và chứng chỉ SSL máy khách là hai tính năng mới đáng chú ý. Phiên bản Connector/Net này không còn có sẵn để tải xuống
  • Máy chủ MySQL 5. 6, 5. 5, 5. 1, 5. 0 và 4. 1 hiện được hỗ trợ bởi Connector/Net 6. 1. Công cụ cấu hình trang web MySQL và Nhà cung cấp trạng thái phiên là hai tính năng mới đặc biệt hữu ích. Trình kết nối/Mạng phiên bản 1. 1 không còn được hỗ trợ
  • Máy chủ MySQL 5. 5, 5. 1, 5. 0 và 4. 1 đều được hỗ trợ trong Connector/Net 6. 0. Trình kết nối/Mạng phiên bản 1. 1 không còn được hỗ trợ
  • Máy chủ MySQL 5. 5, 5. 1, 5. 0 và 4. 1 hiện được hỗ trợ bởi Connector/Net 5. 2. Khung nhỏ gọn 2. 0, trình phân tích cú pháp thủ tục được lưu trữ mới và các cải tiến đối với GetSchema cũng được bao gồm trong Connector/Net 5. 2. Là một thành phần có thể cài đặt tiêu chuẩn, Connector/Net 5. 2 bao gồm Plugin Visual Studio. Trình kết nối/Mạng phiên bản 1. 0 không còn được hỗ trợ
  • Máy chủ MySQL 5. 5, 5. 1, 5. 0, 4. 1 và 4. 0 được hỗ trợ với Connector/Net 5. 1. Khung nhỏ gọn 2. 0, trình phân tích cú pháp thủ tục được lưu trữ mới và các cải tiến đối với GetSchema cũng được bao gồm trong Connector/Net 5. 1. Là một thành phần có thể cài đặt tiêu chuẩn, Connector/Net 5. 1 bao gồm Plugin Visual Studio. Trình kết nối/Mạng phiên bản 1. 1 không còn được hỗ trợ
  • Tính năng máy chủ MySQL 5. 1, 5. 0, 4. 1 và 4. 0 được hỗ trợ bởi Connector/Net 5. 0. THỪA NHẬN. mạng 2. 0 và các lớp con được hỗ trợ đầy đủ trong Connector/Net 5. 0, cũng như các hook cố vấn sử dụng và theo dõi hiệu suất (PerfMon). Trình kết nối/Mạng phiên bản 1. 1 không còn được hỗ trợ
  • Đầu nối/Mạng 1. 0 bao gồm khả năng tương thích hoàn toàn với ADO. NET và hỗ trợ cho MySQL Server 5. 0, 4. 1 và 4. 0 tính năng. Trình kết nối/Mạng phiên bản 1. 0 không còn được hỗ trợ

Làm cách nào để quản lý nhóm kết nối trong Trình kết nối/NET?

Với các ứng dụng sử dụng nhiều cơ sở dữ liệu, MySQL Connector/NET hỗ trợ kết nối tổng hợp để cải thiện hiệu suất và khả năng mở rộng. Theo mặc định, điều này được bật. Sử dụng các tùy chọn chuỗi kết nối, bạn có thể tắt hoặc thay đổi các đặc tính hiệu suất của nó. Tổng hợp, Đặt lại kết nối, Thời gian tồn tại của kết nối, Thuộc tính máy chủ bộ đệm, Kích thước nhóm tối đa và Kích thước nhóm tối thiểu là tất cả các thuật ngữ được sử dụng để mô tả cách thiết lập kết nối

Khi máy khách xử lý MySqlConnection, kết nối tổng hợp sẽ giữ cho kết nối gốc đến máy chủ tồn tại. Kết quả là, thay vì tạo một kết nối gốc mới, một đối tượng MySqlConnection mới được tạo từ nhóm kết nối. Điều này làm tăng hiệu quả

hướng dẫn

Cho phép hệ thống tổng hợp kết nối quản lý tất cả các kết nối là cách tốt nhất để đảm bảo rằng mọi thứ hoạt động bình thường. Không tạo phiên bản MySqlConnection có thể truy cập toàn cầu rồi mở và đóng thủ công. Điều này làm gián đoạn quá trình tổng hợp, dẫn đến kết quả không thể đoán trước hoặc thậm chí là ngoại lệ

Tránh tạo đối tượng MySqlConnection theo cách thủ công là một cách giúp mọi việc dễ dàng hơn. Thay vào đó, hãy sử dụng các phương thức quá tải với chuỗi kết nối làm đối số. Trình kết nối/NET thực hiện phương pháp này và sử dụng hệ thống tổng hợp kết nối để tự động tạo, mở, đóng và hủy kết nối

Cách tiếp cận này được sử dụng bởi Typed Datasets, cũng như các lớp MembershipProvider và RoleProvider. Hầu hết các lớp chấp nhận MySqlConnection làm đối số cũng chấp nhận chuỗi kết nối làm đối số. MySqlDataAdapter là một trong số đó

Thay vì tự tạo các đối tượng MySqlCommand, bạn có thể sử dụng các phương thức tĩnh của lớp MySqlHelper. Các phương thức này lấy một chuỗi kết nối làm đối số và hỗ trợ tổng hợp kết nối hoàn toàn

Sử dụng tài nguyên

Ba phút một lần, Trình kết nối/NET chạy một công việc nền để loại bỏ các kết nối khỏi nhóm đã không hoạt động trong hơn ba phút. Cả máy khách và máy chủ đều được hưởng lợi từ việc dọn dẹp nhóm. Bởi vì mọi kết nối trên máy khách đều sử dụng một ổ cắm và mọi kết nối trên máy chủ đều sử dụng một ổ cắm và một luồng, đây là trường hợp

Hiện có rất nhiều trong số họ. Một chuỗi kết nối hiện có thể bao gồm nhiều điểm cuối (máy chủ. port) với tính năng tổng hợp kết nối được bật bắt đầu với Trình kết nối/NET 8. 0. 19. Trình kết nối/NET cố gắng kết nối với một trong các địa chỉ trong nhóm khi chạy (hoặc theo mức độ ưu tiên nếu một địa chỉ được cung cấp). Trình kết nối/NET chọn một địa chỉ khác cho đến khi hết bộ địa chỉ nếu nỗ lực kết nối không thành công. Cứ sau hai phút, các điểm cuối không thành công sẽ được thử lại. Cơ chế tổng hợp kết nối quản lý các kết nối thành công

Làm cách nào để sử dụng MySQL Connector NET?

Để bắt đầu sử dụng hiệu quả MySQL Connector NET, bạn có thể xem qua các khía cạnh quan trọng sau

  1. Cài đặt MySQL Connector NET
  2. Tạo một kết nối NET MySQL Connector
  3. Truy xuất dữ liệu

1) Cài đặt MySQL Connector NET

MySQL Connector NET có thể dễ dàng cài đặt trên bất kỳ nền tảng nào hỗ trợ. Nền tảng NET,. NET Core và Mono. Ví dụ: Windows và Unix. Bạn có thể chọn bất kỳ phương pháp nào trong số này để cài đặt MySQL Connector NET

  • Phương pháp 1. Phương pháp được đề xuất và hiệu quả cho HĐH Windows là tải xuống và cài đặt Trình cài đặt MySQL. Trong khi thực hiện trình hướng dẫn cài đặt, hãy chọn và cài đặt sản phẩm Connector NET

MySQL Connector NET - MySQL Installer | Hevo DataNguồn hình ảnh

  • Phương pháp 2. Một cách khác là thông qua Windows Installer (. msi) Gói cài đặt có tên là mysql-connector-net-version. msi, trong đó phiên bản biểu thị phiên bản Trình kết nối/NET. Thực hiện theo các bước đơn giản để cài đặt
    • Bước 1. Mở trình cài đặt MSI và nhấp vào nút Tiếp theo
    • Bước 2. Bây giờ bạn có thể chọn từ Cài đặt điển hình, Hoàn thành hoặc Tùy chỉnh. Cài đặt điển hình là cách tiếp cận có mục đích chung trong khi Cài đặt hoàn chỉnh cài đặt tất cả các tệp có sẵn. Cài đặt tùy chỉnh cho phép bạn chọn các thành phần bạn muốn cài đặt. Nhấp vào nút Tiếp theo sau khi chọn cài đặt mong muốn

MySQL Connector NET - Setup Types | Hevo DataNguồn hình ảnh

  • Bước 3. Sau khi cài đặt thành công, nhấn vào nút Hoàn tất để thoát khỏi bộ cài đặt

MySQL Connector NET - Finish setup | Hevo DataNguồn hình ảnh

  • Bước 4. Ngoài ra, bạn có thể cài đặt trực tiếp qua tùy chọn dòng lệnh /quiet hoặc /q bằng công cụ msiexec. Mặc dù vậy, nó không cung cấp bất kỳ tùy chọn, lời nhắc, thông báo hoặc hộp thoại nào
C:> msiexec /package connector-net.msi /quiet
  • Phương pháp 3. Bạn cũng có thể sử dụng thư viện NuGet để cài đặt hoặc nâng cấp MySQL Connector NET. Bạn có thể truy cập NuGet Gallery để xem nhiều công cụ máy khách để cài đặt thuận tiện
  • Phương pháp 4. Để cài đặt trên Unix, bạn có thể làm theo các bước đơn giản dưới đây
    • Bước 1. Đầu tiên, đảm bảo rằng bạn đã cài đặt Mono trên hệ thống của mình bằng lệnh sau
$> mono --version

Ngoài ra, hãy đảm bảo rằng trình biên dịch Mono C# được cài đặt để biên dịch Mã nguồn C#.  

  • Bước 2. Bây giờ, bạn có thể tải xuống mysql-connector-net-version-noinstall. zip và giải nén các thành phần của nó vào một thư mục bạn chọn chẳng hạn. ~/kết nối-mạng/. Điều hướng đến thư mục mà bạn đã giải nén tệp zip và chuyển đến thư mục con bin. Kiểm tra xem MySql. Dữ liệu. dll có mặt
  • Bước 3. Trong thư mục hiện tại, thực hiện lệnh sau để đăng ký thành phần Connector/NET, MySql. Dữ liệu, trong Bộ nhớ cache lắp ráp toàn cầu (GAC)
#> gacutil /i MySql.Data.dll

Bây giờ bạn đã sẵn sàng để biên dịch các ứng dụng của mình, chẳng hạn

$> gmcs -r:System.dll -r:System.Data.dll -r:MySql.Data.dll NewApplication.cs 
  • Phương pháp 5. Để kiểm soát hoàn toàn, bạn có thể xây dựng và tùy chỉnh MySQL Connector NET từ mã nguồn. Bạn có thể Tải xuống Mã nguồn và xây dựng Trình kết nối bằng Visual Studio hoặc. NET Core CLI. Để biết thêm thông tin về các phương pháp cài đặt, bạn có thể truy cập trang Cài đặt MySQL Connector NET

2) Tạo kết nối NET MySQL Connector

Đối với bất kỳ tương tác nào xảy ra giữa. NET và Máy chủ MySQL, bạn phải khởi động và định cấu hình đối tượng MySqlConnection. Thực hiện theo các bước đơn giản dưới đây để bắt đầu

  • Bước 1. Chuỗi kết nối bao gồm một số cặp khóa-giá trị, được phân tách bằng dấu chấm phẩy là điều cần thiết để định cấu hình đối tượng MySqlConnection. Một chuỗi ví dụ được đưa ra bên dưới kết nối với Máy chủ MySQL tại “198. 0. 0. 1”, với tên người dùng là “main” và mật khẩu là “68375”.  
"server=198.0.0.1;uid=main;pwd=68375;database=sample" 

Sau khi tạo Chuỗi kết nối, bạn có thể sử dụng chương trình C# sau để mở kết nối với một máy chủ

MySql.Data.MySqlClient.MySqlConnection conn;
string sampleConnectionString;

sampleConnectionString = "server=198.0.0.1;uid=main;" +
    "pwd=68375;database=sample";

try
{
    conn = new MySql.Data.MySqlClient.MySqlConnection();
    conn.ConnectionString = sampleConnectionString;
    conn.Open();
}
catch (MySql.Data.MySqlClient.MySqlException ex)
{
    MessageBox.Show(ex.Message);
}

Một mã tương tự cho Visual Studio là

Dim conn As New MySql.Data.MySqlClient.MySqlConnection
Dim myConnectionString as String

sampleConnectionString = "server=198.0.0.1;" _
            & "uid=main;" _
            & "pwd=68375;" _
            & "database=sample"

Try
  conn.ConnectionString = sampleConnectionString
  conn.Open()

Catch ex As MySql.Data.MySqlClient.MySqlException
  MessageBox.Show(ex.Message)
End Try
  • Bước 2. Bạn có thể làm theo cách tiếp cận tương tự để thiết lập kết nối cho Nhiều máy chủ với Chuyển đổi dự phòng. Chuỗi kết nối mẫu cho cả giao thức MySQL cổ điển và kết nối Giao thức X như sau
// classic protocol example
"server=142.0.0.1:5508,198.1.10.10:5507,localhost:5508;uid=test;password=xxxx"

// X Protocol example
mysqlx://test:test@[198.1.10.10:5507,142.0.0.1:5508]
  • Bước 3. Bản ghi dịch vụ DNS cũng có thể được sử dụng để cung cấp các dịch vụ Chuyển đổi dự phòng, Cân bằng tải và Sao chép khi nhiều phiên bản MySQL cung cấp cùng một dịch vụ trong cài đặt của bạn. Mã C# mẫu sau đây cho biết cách dễ dàng mở kết nối bằng bản ghi DNS SRV bằng cách thêm tùy chọn kết nối DNS-SRV vào Chuỗi kết nối của bạn.   
________số 8

Ghi chú. Hệ thống tổng hợp kết nối tự động quản lý tất cả các kết nối. Kiểm tra lý lịch thường xuyên ba phút một lần được thực hiện để xóa các kết nối khỏi nhóm không hoạt động (không sử dụng) trong hơn ba phút. Điều này giải phóng các tài nguyên thiết yếu ở cả phía máy khách và phía máy chủ. Cách tốt nhất, hãy thử tạo các đối tượng MySqlCommand thông qua các phương thức tĩnh của Lớp MySqlHelper thay vì thủ công. Điều này cho phép Hệ thống tổng hợp kết nối của MySQL Connector NET tự động xây dựng, mở, đóng và kết thúc các kết nối để có hiệu suất tốt nhất

3) Truy xuất dữ liệu

Một số Lớp NET của Trình kết nối MySQL hỗ trợ thực hiện các truy vấn và câu lệnh cũng như quản lý kết quả truy vấn. Được sử dụng phổ biến nhất là lớp MySqlCommand. Các phương thức của lớp này cho phép bạn truy vấn, thêm, chèn hoặc cập nhật cơ sở dữ liệu. Để thực thi nhanh hơn, bạn có thể tổ chức MySqlCommand dưới dạng Câu lệnh đã chuẩn bị hoặc thủ tục được lưu trữ. MySqCommandl bao gồm các thuộc tính cụ thể là Thuộc tính CommandText và CommandType, Thuộc tính tham số, Thuộc tính thuộc tính và Thuộc tính CommandTimeout.  

Ví dụ, hãy thảo luận về Thuộc tính loại lệnh. Theo mặc định, loại CommandType được đặt thành “Văn bản” để thực hiện các truy vấn và các lệnh SQL khác. Ví dụ, nếu CommandType được đặt thành “TableDirect” thì tất cả các hàng và cột của bảng sẽ được trả về sau khi bạn đã gọi các phương thức thực thi. Điều này tương tự như câu lệnh SQL “SELECT *” và đoạn mã sau có thể được sử dụng để lấy đầu ra nói trên

...
MySqlCommand cmd = new MySqlCommand();
cmd.CommandText = "mytable";
cmd.Connection = someConnection;
cmd.CommandType = CommandType.TableDirect;
MySqlDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
   Console.WriteLn(reader[0], reader[1]...);
}
.. 

Bạn có thể xem Tài liệu chính thức để biết thêm về MySQLCommand và một số lớp và phương thức MySQL Connector NET khác như BulkLoader, phương thức GetSchema(), v.v.  

Lỗi kết nối trong C# và Visual Basic. Làm thế nào để xử lý chúng

Bởi vì việc kết nối với một máy chủ bên ngoài có thể không đoán trước được, bạn. NET nên bao gồm xử lý lỗi. Lớp MySqlConnection sẽ trả về đối tượng MySqlException nếu có lỗi kết nối. Khi xử lý lỗi, đối tượng này có hai thuộc tính hữu ích

  • Thông điệp. Mô tả bằng văn bản về ngoại lệ hiện tại
  • Số lỗi MySQL là một số

Bạn có thể điều chỉnh phản hồi của ứng dụng dựa trên số lỗi khi xử lý lỗi. Khi kết nối, sau đây là hai mã lỗi phổ biến nhất

  • 0. Không thể truy cập máy chủ
  • 1045. Tên người dùng, mật khẩu hoặc cả hai đều không hợp lệ

Ví dụ mã sau minh họa cách quản lý phản hồi của ứng dụng dựa trên lỗi thực tế

Ví dụ về C#

$> mono --version
0

Ví dụ trực quan cơ bản

$> mono --version
1

Plugin và Phương thức Xác thực Trình kết nối/NET là gì?

MySQL Connector/NET cung cấp một số plugin xác thực mà MySQL Server có thể sử dụng để xác minh danh tính người dùng. Dựa trên tên người dùng và tên máy chủ mà ứng dụng của bạn chuyển đến máy chủ khi tạo kết nối, xác thực có thể cắm được cho phép máy chủ xác định plugin nào được áp dụng. Xem Pluggable Authentication để biết mô tả chi tiết về quy trình xác thực

Các plugin và phương thức xác thực sau có sẵn trong Connector/NET

  • xác thực_kerberos_client. Đối với tài khoản người dùng và dịch vụ MySQL Enterprise Edition, các ứng dụng và máy chủ MySQL có thể sử dụng giao thức xác thực Kerberos. Cả người dùng và máy chủ đều có thể xác thực danh tính của nhau bằng cách sử dụng plugin máy khách kerberos xác thực. Các tin nhắn giao thức Kerberos được bảo vệ khỏi các cuộc tấn công nghe trộm và phát lại, đồng thời không có mật khẩu nào được gửi qua mạng. Chỉ Linux được hỗ trợ cho plugin phía máy chủ

Theo loại máy chủ, tính khả dụng của xác thực Kerberos và các yêu cầu để kích hoạt nó khác nhau. Vì. NET chạy trên macOS, Trình kết nối/NET không cung cấp xác thực Kerberos. Xác thực Kerberos được triển khai bằng các giao diện sau trong các ứng dụng Linux và Windows

Đối với Linux, GSSAPI là viết tắt của Generic Security Service Application Program Interface

Đối với các kết nối giao thức MySQL truyền thống, Trình kết nối/NET 8. 0. 26 là bắt buộc. Chỉ người dùng Linux mới có thể sử dụng tính năng này

Để cho phép xác thực vé yêu cầu cho Trình kết nối/NET bằng máy chủ MySQL, MIT Kerberos phải được cài đặt trên mỗi hệ thống máy khách

Đối với các kết nối giao thức MySQL cổ điển, phiên bản tối thiểu là Connector/NET 8. 0. 27. Chỉ Windows được hỗ trợ

SSPI/Kerberos được sử dụng để xác thực trong Connector/NET. GSSAPI được SSPI triển khai trên Windows. Sau đây là một số khác biệt về hành vi giữa SSPI và GSSAPI

  • Cấu hình. Các thư viện bên ngoài hoặc cấu hình Kerberos không được máy khách Windows sử dụng. Ví dụ: trên Linux, bạn có thể thay đổi thời gian hết hạn của phiếu cấp vé (TGT), cổng của trung tâm phân phối khóa (KDC), v.v. Không có tùy chọn nào trong số này khả dụng trên Windows
  • Bộ nhớ đệm TGT Ticket. Nếu bạn cung cấp tên người dùng và mật khẩu để xác thực, các vé thu được sẽ không được lưu trong bộ đệm. Mỗi lần, vé mới được lấy
  • Xác thực không có người dùng hoặc mật khẩu. Thông tin đăng nhập và tên người dùng của người dùng hiện đang đăng nhập trên Windows được sử dụng. Để đăng nhập thành công, máy khách Windows phải là thành viên của miền Active Directory của máy chủ
  • xác thực_ldap_sasl_client

Xác thực LDAP dựa trên SASL yêu cầu MySQL Enterprise Edition và chỉ có thể được sử dụng để kết nối với máy chủ MySQL bằng giao thức cổ điển. Giao thức xác thực này tương thích với các ứng dụng Linux, Windows (hỗ trợ một phần) và macOS

Phiên bản 1 (tối thiểu)

Trên Linux và Windows, sử dụng Trình kết nối/NET 8. 0. 22 (SCRAM-SHA-1)

Trên Linux và Windows, sử dụng Trình kết nối/NET 8. 0. 23 (SCRAM-SHA-256)

Chỉ Trình kết nối/NET 8. 0. 24 (GSSAPI) được hỗ trợ trên Linux

Để bật xác thực vé yêu cầu Trình kết nối/NET bằng máy chủ MySQL, MIT Kerberos phải được cài đặt trên mỗi hệ thống máy khách. Cơ chế GSSAPI phải được định cấu hình trong plugin ldap sasl xác thực và người dùng ứng dụng phải được xác định như sau

$> mono --version
2

Đối với Linux, bạn sẽ cần libgssapi krb5. vì thế. 2 thư viện

  • xác thực_oci_client

Đầu nối/NET 8. 0. 27 là phiên bản tối thiểu cần thiết cho các kết nối giao thức MySQL cổ điển

Cơ sở hạ tầng đám mây Oracle xác thực có thể cắm được hỗ trợ bởi Connector/NET, cho phép. NET để truy cập an toàn Dịch vụ cơ sở dữ liệu MySQL mà không cần sử dụng mật khẩu. Vì. Khung lưới 4. 5. x, xác thực có thể cắm này không được hỗ trợ

Quyền truy cập vào hợp đồng thuê, phiên bản Điện toán, Hệ thống Cơ sở dữ liệu MySQL được kết nối với mạng riêng và các nhóm, ngăn và chính sách được định cấu hình phù hợp đều cần thiết cho loại kết nối này. Thiết lập cơ bản cho tài khoản người dùng MySQL có thể được thực hiện bởi quản trị viên Cơ sở hạ tầng đám mây của Oracle

Trước khi thử kết nối, Hệ thống Cơ sở dữ liệu MySQL cũng phải cài đặt và tải plugin xác thực phía máy chủ. Plugin xác thực phía máy khách được thực hiện bởi Connector/NET

Plugin phía máy khách định vị tệp cấu hình Cơ sở hạ tầng đám mây Oracle của người dùng trong quá trình xác thực và lấy tệp khóa ký từ tệp đó. Tùy chọn kết nối ociConfigFile có thể được sử dụng để chỉ định vị trí của tệp cấu hình; . Trình kết nối/NET sau đó ký mã thông báo mà nó nhận được từ máy chủ, sử dụng mã thông báo để tạo chữ ký SHA256 RSA mà nó gửi lại cho máy chủ và đợi quá trình xác thực thành công hay thất bại

Sau đây là ví dụ về các điều kiện lỗi có thể xảy ra

  • Không thể tìm thấy khóa riêng được chỉ định trong mục nhập cấu hình OCI 'tệp khóa'
  • Không thể tìm thấy khóa riêng tại vị trí được chỉ định bởi Trình kết nối/NET. Mục nhập cấu hình 'tệp khóa' OCI không đề cập đến tệp khóa hợp lệ
  • Khóa riêng được chỉ định không thể được tải hoặc sử dụng bởi Trình kết nối/NET. Không có mục nhập 'dấu vân tay' hoặc 'tệp khóa' trong tệp cấu hình OCI
  • Mục nhập vân tay, mục nhập tệp khóa hoặc cả hai đều bị thiếu trong tệp cấu hình. Không thể đọc tệp cấu hình OCI
  • Không thể tìm thấy hoặc tải tệp cấu hình bởi Trình kết nối/NET. Đảm bảo giá trị ociConfigFile tương ứng với vị trí của tệp
  • SDK OCI chưa được cài đặt hoặc không tìm thấy. Khi chạy, Trình kết nối/NET không thể tải thư viện Oracle Cloud Infrastructure SDK

OCI. DotNetSDK được sử dụng bởi Trình kết nối/NET. Để đọc các giá trị mục nhập tệp cấu hình, phải có sẵn gói NuGet chung trong thư viện SDK cơ sở hạ tầng đám mây của Oracle

  • xác thực_windows_client

Tất cả các phiên bản của Trình kết nối/NET đều được hỗ trợ

Sử dụng Windows Native Authentication Plugin, MySQL Connector/ứng dụng NET có thể xác thực với máy chủ MySQL. Người dùng đã đăng nhập vào Windows có thể kết nối với máy chủ MySQL bằng thông tin trong môi trường của họ mà không cần phải nhập mật khẩu khác. MySql. Dữ liệu. Đối tượng MySqlClient có cùng giao diện với MySql. Dữ liệu. Đối tượng MySqlClient

Để bật, hãy sử dụng giá trị yes hoặc sspi trong chuỗi kết nối cho Bảo mật tích hợp. Không bắt buộc phải nhập ID người dùng. Người dùng MySQL được tạo và định cấu hình để xác thực Windows sử dụng khi xác thực Windows được thiết lập

ID người dùng này được gọi là cửa sổ xác thực theo mặc định, nhưng nó có thể được đặt tên khác. Việc chuyển ID người dùng tới chuỗi kết nối Trình kết nối/NET là tùy chọn nếu tên mặc định được sử dụng, bởi vì người dùng cửa sổ xác thực sẽ được sử dụng. Mặt khác, phần tử ID người dùng phải được sử dụng để chuyển tên cho chuỗi kết nối

  • caching_sha2_password. Đầu nối/NET 8. 0. 11 là phiên bản tối thiểu cần thiết cho các kết nối giao thức MySQL cổ điển
  • mysql_clear_password

Chỉ dành cho các kết nối giao thức MySQL cổ điển, Trình kết nối/NET 8. 0. 22 là bắt buộc.
Yêu cầu kết nối an toàn với máy chủ bằng mật khẩu xóa mysql, có thể đáp ứng một trong các điều kiện máy khách sau.

Không phải là giá trị cho tùy chọn kết nối SslMode. Theo mặc định, Ưu tiên được đặt thành giá trị này

Đối với ổ cắm miền Unix, tùy chọn kết nối ConnectionProtocol là unix

  • mysql_native_password. Để thiết lập các kết nối giao thức MySQL cổ điển và Giao thức X, tất cả các phiên bản của Trình kết nối/NET đều được hỗ trợ
  • sha256_mật khẩu. Đầu nối/NET 8. 0. 11 là bắt buộc đối với các kết nối giao thức MySQL truyền thống và kết nối Giao thức X sử dụng cơ chế MYSQL41 (xem tùy chọn Kết nối xác thực)

Sự kết luận

Trong bài viết này, bạn đã học cách làm việc hiệu quả với MySQL Connector NET. Bạn có thể dễ dàng cài đặt MySQL Connector NET trên Windows và Unix. Sau khi bạn đã tạo Chuỗi kết nối, bạn có thể thiết lập kết nối NET của Trình kết nối MySQL với một Máy chủ cũng như với Nhiều máy chủ. Bạn cũng có thể thêm, chèn, sửa đổi hoặc truy vấn Cơ sở dữ liệu của mình bằng cách sử dụng các Lớp NET của Trình kết nối MySQL như MySqlCommand, BulkLoader, v.v.

Để có được bức tranh toàn cảnh về tình trạng & hiệu suất kinh doanh của bạn, bạn cần hợp nhất dữ liệu từ MySQL và tất cả các ứng dụng khác được sử dụng trong doanh nghiệp của bạn để Tiếp thị, Quản lý Quan hệ Khách hàng, Kế toán, Bán hàng, v.v. Để đạt được điều này, bạn cần chỉ định một phần Băng thông kỹ thuật của mình để Tích hợp dữ liệu từ tất cả các nguồn, Làm sạch & Chuyển đổi dữ liệu và cuối cùng, Tải dữ liệu đó vào Kho dữ liệu đám mây hoặc đích bạn chọn để phân tích thêm về doanh nghiệp. Tất cả những thách thức này có thể được giải quyết một cách thoải mái bằng công cụ ETL dựa trên đám mây như Hevo Data.   

Ghé thăm trang web của chúng tôi để khám phá Hevo

Dữ liệu Hevo, Đường ống dữ liệu không mã có thể truyền dữ liệu liền mạch từ biển rộng lớn gồm hơn 100 nguồn như MySQL sang Kho dữ liệu hoặc Điểm đến do bạn chọn để hiển thị trong Công cụ BI. Đây là một dịch vụ đáng tin cậy, hoàn toàn tự động và an toàn không yêu cầu bạn viết bất kỳ mã nào.   

Nếu bạn đang sử dụng MySQL làm Hệ thống quản lý cơ sở dữ liệu của mình và đang tìm kiếm một giải pháp thay thế đơn giản cho Tích hợp dữ liệu thủ công, thì Hevo có thể dễ dàng tự động hóa việc này cho bạn. Hevo, với khả năng tích hợp mạnh mẽ với hơn 100 nguồn & công cụ BI (Bao gồm hơn 40 nguồn miễn phí), cho phép bạn không chỉ xuất và tải dữ liệu mà còn chuyển đổi và làm phong phú dữ liệu của bạn và làm cho dữ liệu sẵn sàng để phân tích trong nháy mắt

Bạn muốn đưa Hevo đi chơi? . Hãy kiểm tra các chi tiết về giá để hiểu kế hoạch nào đáp ứng tất cả các nhu cầu kinh doanh của bạn

Hãy cho chúng tôi biết về trải nghiệm của bạn khi làm việc với MySQL Connector NET. Chia sẻ suy nghĩ của bạn với chúng tôi trong phần bình luận bên dưới

Trình kết nối MySQL được cài đặt ở đâu?

Trừ khi bạn chọn một thư mục khác, Trình kết nối/NET được cài đặt trong C. \Program Files (x86)\MySQL\MySQL Connector phiên bản Net (phiên bản đã cài đặt). Cài đặt mới không ghi đè lên các phiên bản hiện có của Trình kết nối/NET.

Làm cách nào tôi có thể cài đặt Trình kết nối MySQL?

Sau đây là một số cách. .
Cài đặt MySQL Connector Python bằng lệnh pip
Cài đặt MySQL connector python qua mã nguồn (thông qua tệp ZIP hoặc TAR)
Sử dụng phân phối được xây dựng Một gói được tạo ở định dạng đóng gói gốc dành cho một nền tảng nhất định. Ví dụ các gói RPM cho Linux hay bộ cài MSI cho windows

Tôi có thể tìm tệp jar Trình kết nối MySQL ở đâu?

jar' được lưu trữ trong "C. \Program Files\MySQL\MySQL Connector J\". Ghi chú. Đường dẫn lớp là đường dẫn mà Môi trường thời gian chạy Java (JRE) tìm kiếm các lớp và các tệp tài nguyên khác

Tệp jar Trình kết nối MySQL ở đâu trong Linux?

Sau khi được cài đặt, bạn sẽ có tệp /usr/share/java/mysql. jar , là một liên kết tượng trưng gián tiếp đến tệp jar thực tế