Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Kết nối với MariaDB từ ứng dụng Java trong NetBeans trên Linux (Mageia)

Có vẻ như bạn đang cố sử dụng jdbc:mariadb://... để thiết lập kết nối với phiên bản máy chủ MariaDB bằng Trình điều khiển JDBC MySQL. Điều đó có thể sẽ không hoạt động vì Trình điều khiển JDBC của MySQL sẽ sử dụng jdbc:mysql://... , bất kể nó đang kết nối với máy chủ MySQL hay máy chủ MariaDB. Nghĩa là, chuỗi kết nối phải khớp với trình điều khiển đang được sử dụng (thay vì máy chủ cơ sở dữ liệu đang được truy cập).

Trình điều khiển MySQL và MariaDB được cho là có thể hoán đổi cho nhau, nhưng có vẻ như bạn chỉ nên sử dụng trình kết nối MariaDB khi truy cập máy chủ MariaDB một cách thận trọng. Đối với những gì nó đáng giá, sự kết hợp của mariadb-java-client-1.1.7.jar

Connection con = DriverManager.getConnection(
        "jdbc:mariadb://localhost/project", 
        "root", 
        "whatever");

đã làm cho tôi. Tôi đã tải xuống Thư viện máy khách MariaDB cho Java từ đây:

https://downloads.mariadb.org/client-java/1.1.7/

mà tôi đã đến qua

https://downloads.mariadb.org/

Ghi chú bổ sung:

  1. Không cần Class.forName() trong mã Java của bạn.

  2. Cấu hình mặc định cho MariaDB trong Mageia có thể bao gồm skip-networking chỉ thị trong /etc/my.cnf . Bạn sẽ cần phải xóa (hoặc bình luận) chỉ thị đó nếu bạn muốn kết nối với cơ sở dữ liệu qua JDBC vì các kết nối JDBC luôn trông giống như kết nối "mạng" với MySQL / MariaDB, ngay cả khi chúng là kết nối từ localhost . (Bạn có thể cần chỉnh sửa bind-address giá trị thành một cái gì đó như 0.0.0.0 nữa.)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL:chọn các hàng trong đó giá trị cột đã thay đổi so với hàng trước đó

  2. Sử dụng NẾU TỒN TẠI của MySQL

  3. Thoát khỏi báo giá đơn trong PHP khi chèn vào MySQL

  4. Chuyển đổi định dạng ngày trong SQL? [dd.mm.yy thành YYYY-MM-DD]

  5. Giá trị mặc định cấp Django DB cho một cột