Hướng dẫn what is connection string in mysql? - chuỗi kết nối trong mysql là gì?

4.2.5 & nbsp; Kết nối với máy chủ bằng các chuỗi giống như URI hoặc các cặp giá trị khóa

Phần này mô tả việc sử dụng các chuỗi kết nối giống như URI hoặc các cặp giá trị khóa để chỉ định cách thiết lập kết nối với máy chủ MySQL, cho các máy khách như MySQL Shell. Để biết thông tin về việc thiết lập các kết nối bằng cách sử dụng các tùy chọn dòng lệnh, cho các máy khách như MySQL hoặc MySQLDump, xem Phần & NBSP; 4.2.4, Kết nối với máy chủ MySQL bằng các tùy chọn lệnh. Để biết thêm thông tin nếu bạn không thể kết nối, hãy xem Phần & NBSP; 6.2.22, các vấn đề khắc phục sự cố kết nối với MySQL.mysql or mysqldump, see Section 4.2.4, “Connecting to the MySQL Server Using Command Options”. For additional information if you are unable to connect, see Section 6.2.22, “Troubleshooting Problems Connecting to MySQL”.

Ghi chú

Thuật ngữ giống như URI của URI biểu thị cú pháp chuỗi kết nối tương tự nhưng không giống với cú pháp URI (định danh tài nguyên đồng đều) được xác định bởi RFC 3986.URI-like signifies connection-string syntax that is similar to but not identical to the URI (uniform resource identifier) syntax defined by RFC 3986.

Hỗ trợ máy khách MySQL sau đây kết nối với máy chủ MySQL bằng chuỗi kết nối giống URI hoặc các cặp giá trị khóa:

  • Vỏ mysql

  • Các đầu nối MySQL thực hiện X Devapi

Phần này ghi lại tất cả các tham số kết nối cặp có giá trị chính và chuỗi chính hợp lệ, nhiều trong số đó tương tự như các tham số được chỉ định với các tùy chọn dòng lệnh:

  • Các tham số được chỉ định với chuỗi giống URI sử dụng cú pháp như

    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    9. Đối với cú pháp đầy đủ, xem kết nối bằng các chuỗi kết nối giống URI.

  • Các tham số được chỉ định với các cặp giá trị khóa sử dụng cú pháp như

    mysqlx://user@host?connection-attributes=[attr1=val1,attr2,attr3=]
    mysqlx://user@host?connection-attributes=[]
    0. Đối với cú pháp đầy đủ, xem kết nối bằng các cặp giá trị khóa.

Các tham số kết nối không nhạy cảm trường hợp. Mỗi tham số, nếu được chỉ định, chỉ có thể được đưa ra một lần. Nếu một tham số được chỉ định nhiều lần, xảy ra lỗi.

Phần này bao gồm các chủ đề sau:

  • Tham số kết nối cơ sở

  • Tham số kết nối bổ sung

  • Kết nối bằng các chuỗi kết nối giống Uri

  • Kết nối bằng cách sử dụng các cặp giá trị khóa

Tham số kết nối cơ sở

Tham số kết nối bổ sung

  • Kết nối bằng các chuỗi kết nối giống Uri

  • Kết nối bằng cách sử dụng các cặp giá trị khóa

  • Các cuộc thảo luận sau đây mô tả các tham số có sẵn khi chỉ định kết nối với MySQL. Các tham số này có thể được cung cấp bằng cách sử dụng một chuỗi phù hợp với cú pháp giống như URI cơ sở (xem kết nối bằng các chuỗi kết nối giống URI) hoặc làm cặp giá trị khóa (xem kết nối bằng các cặp giá trị khóa).

    mysqlx://user@host?connection-attributes=[attr1=val1,attr2,attr3=]
    mysqlx://user@host?connection-attributes=[]
    1: Giao thức vận chuyển để sử dụng. Sử dụng
    mysqlx://user@host?connection-attributes=[attr1=val1,attr2,attr3=]
    mysqlx://user@host?connection-attributes=[]
    2 cho các kết nối giao thức X và
    mysqlx://user@host?connection-attributes=[attr1=val1,attr2,attr3=]
    mysqlx://user@host?connection-attributes=[]
    3 cho các kết nối giao thức MySQL cổ điển. Nếu không có giao thức được chỉ định, máy chủ sẽ cố gắng đoán giao thức. Các đầu nối hỗ trợ DNS SRV có thể sử dụng sơ đồ ____24 (xem các kết nối bằng bản ghi DNS SRV).

    mysqlx://user@host?connection-attributes=[attr1=val1,attr2,attr3=]
    mysqlx://user@host?connection-attributes=[]
    5: Tài khoản người dùng MySQL để cung cấp cho quy trình xác thực.

  • mysqlx://user@host?connection-attributes=[attr1=val1,attr2,attr3=]
    mysqlx://user@host?connection-attributes=[]
    6: Mật khẩu để sử dụng cho quá trình xác thực.

  • Cảnh báo

  • Chỉ định một mật khẩu rõ ràng trong đặc tả kết nối là không an toàn và không được khuyến nghị. Thảo luận sau đó cho thấy làm thế nào để gây ra một lời nhắc tương tác cho mật khẩu xảy ra.

  • mysqlx://user@host?connection-attributes=[attr1=val1,attr2,attr3=]
    mysqlx://user@host?connection-attributes=[]
    7: Máy chủ mà phiên bản máy chủ đang chạy. Giá trị có thể là tên máy chủ, địa chỉ IPv4 hoặc địa chỉ IPv6. Nếu không có máy chủ được chỉ định, mặc định là
    mysqlx://user@host?connection-attributes=[attr1=val1,attr2,attr3=]
    mysqlx://user@host?connection-attributes=[]
    8.

mysqlx://user@host?connection-attributes=[attr1=val1,attr2,attr3=]
mysqlx://user@host?connection-attributes=[]
9: Cổng mạng TCP/IP mà máy chủ MySQL đích đang nghe các kết nối. Nếu không có cổng nào được chỉ định, mặc định là 33060 cho các kết nối giao thức X và 3306 cho các kết nối giao thức MySQL cổ điển.

Tham số kết nối bổ sung

Kết nối bằng các chuỗi kết nối giống Uri

  • Kết nối bằng cách sử dụng các cặp giá trị khóa

    • Các cuộc thảo luận sau đây mô tả các tham số có sẵn khi chỉ định kết nối với MySQL. Các tham số này có thể được cung cấp bằng cách sử dụng một chuỗi phù hợp với cú pháp giống như URI cơ sở (xem kết nối bằng các chuỗi kết nối giống URI) hoặc làm cặp giá trị khóa (xem kết nối bằng các cặp giá trị khóa).

    • mysqlx://user@host?connection-attributes=[attr1=val1,attr2,attr3=]
      mysqlx://user@host?connection-attributes=[]
      1: Giao thức vận chuyển để sử dụng. Sử dụng
      mysqlx://user@host?connection-attributes=[attr1=val1,attr2,attr3=]
      mysqlx://user@host?connection-attributes=[]
      2 cho các kết nối giao thức X và
      mysqlx://user@host?connection-attributes=[attr1=val1,attr2,attr3=]
      mysqlx://user@host?connection-attributes=[]
      3 cho các kết nối giao thức MySQL cổ điển. Nếu không có giao thức được chỉ định, máy chủ sẽ cố gắng đoán giao thức. Các đầu nối hỗ trợ DNS SRV có thể sử dụng sơ đồ ____24 (xem các kết nối bằng bản ghi DNS SRV).

    • mysqlx://user@host?connection-attributes=[attr1=val1,attr2,attr3=]
      mysqlx://user@host?connection-attributes=[]
      5: Tài khoản người dùng MySQL để cung cấp cho quy trình xác thực.

    • mysqlx://user@host?connection-attributes=[attr1=val1,attr2,attr3=]
      mysqlx://user@host?connection-attributes=[]
      6: Mật khẩu để sử dụng cho quá trình xác thực.

    • Cảnh báo

    Chỉ định một mật khẩu rõ ràng trong đặc tả kết nối là không an toàn và không được khuyến nghị. Thảo luận sau đó cho thấy làm thế nào để gây ra một lời nhắc tương tác cho mật khẩu xảy ra.

    mysqlx://user@host?connection-attributes=[attr1=val1,attr2,attr3=]
    mysqlx://user@host?connection-attributes=[]
    7: Máy chủ mà phiên bản máy chủ đang chạy. Giá trị có thể là tên máy chủ, địa chỉ IPv4 hoặc địa chỉ IPv6. Nếu không có máy chủ được chỉ định, mặc định là
    mysqlx://user@host?connection-attributes=[attr1=val1,attr2,attr3=]
    mysqlx://user@host?connection-attributes=[]
    8.

    Để biết thông tin về các chế độ này, hãy xem Mô tả tùy chọn

    mysql://user_name@localhost:3333
    1 trong các tùy chọn lệnh cho các kết nối được mã hóa.

  • mysql://user_name@localhost:3333
    2: Đường dẫn đến tệp cơ quan chứng chỉ X.509 ở định dạng PEM.

  • mysql://user_name@localhost:3333
    3: Đường dẫn đến thư mục chứa các tệp cơ quan chứng chỉ X.509 ở định dạng PEM.

  • mysql://user_name@localhost:3333
    4: Đường dẫn đến tệp chứng chỉ X.509 ở định dạng PEM.

  • mysql://user_name@localhost:3333
    5: Mật mã mã hóa để sử dụng cho các kết nối sử dụng các giao thức TLS lên qua TLSV1.2.

  • mysql://user_name@localhost:3333
    6: Đường dẫn đến tệp chứa danh sách thu hồi chứng chỉ ở định dạng PEM.

  • mysql://user_name@localhost:3333
    7: Đường dẫn đến thư mục chứa các tệp danh sách thu hồi chứng chỉ ở định dạng PEM.

  • mysql://user_name@localhost:3333
    8: Đường dẫn đến tệp khóa X.509 ở định dạng PEM.

  • mysql://user_name@localhost:3333
    9: Các giao thức TLS được phép cho các kết nối được mã hóa giao thức MySQL cổ điển. Tùy chọn này chỉ được hỗ trợ bởi Shell MySQL. Giá trị của
    mysql://user_name@localhost:3333
    9 (số ít) là một danh sách phân tách bằng dấu phẩy, ví dụ
    mysqlx://[email protected]/
    mysqlx://[email protected]:123
    mysqlx://user_name@[2001:db8:85a3:8d3:1319:8a2e:370:7348]
    1. Để biết chi tiết, xem Phần & NBSP; 6.3.2, các giao thức TLS kết nối được mã hóa và mật mã. Tùy chọn này phụ thuộc vào tùy chọn
    mysqlx://user_name@localhost:33065
    2 không được đặt thành
    mysqlx://user_name@localhost:33065
    3.

  • mysqlx://[email protected]/
    mysqlx://[email protected]:123
    mysqlx://user_name@[2001:db8:85a3:8d3:1319:8a2e:370:7348]
    4: Các giao thức TLS cho phép cho các kết nối giao thức X được mã hóa. Giá trị của
    mysqlx://[email protected]/
    mysqlx://[email protected]:123
    mysqlx://user_name@[2001:db8:85a3:8d3:1319:8a2e:370:7348]
    4 (số nhiều) là một mảng như
    mysqlx://[email protected]/
    mysqlx://[email protected]:123
    mysqlx://user_name@[2001:db8:85a3:8d3:1319:8a2e:370:7348]
    6. Để biết chi tiết, xem Phần & NBSP; 6.3.2, các giao thức TLS kết nối được mã hóa và mật mã. Tùy chọn này phụ thuộc vào tùy chọn
    mysqlx://user_name@localhost:33065
    2 không được đặt thành
    mysqlx://user_name@localhost:33065
    3.

  • mysqlx://[email protected]/
    mysqlx://[email protected]:123
    mysqlx://user_name@[2001:db8:85a3:8d3:1319:8a2e:370:7348]
    9: Các bộ mật mã TLS được phép. Giá trị của
    mysqlx://[email protected]/
    mysqlx://[email protected]:123
    mysqlx://user_name@[2001:db8:85a3:8d3:1319:8a2e:370:7348]
    9 là danh sách các tên bộ mã hóa IANA như được liệt kê tại TLS Ciphersuites. Để biết chi tiết, xem Phần & NBSP; 6.3.2, các giao thức TLS kết nối được mã hóa và mật mã. Tùy chọn này phụ thuộc vào tùy chọn
    mysqlx://user_name@localhost:33065
    2 không được đặt thành
    mysqlx://user_name@localhost:33065
    3.

  • mysqlx://user_name@/path%2Fto%2Fsocket.sock
    mysqlx://user_name@(/path/to/socket.sock)
    3: Phương thức xác thực để sử dụng cho kết nối. Mặc định là
    mysqlx://user_name@/path%2Fto%2Fsocket.sock
    mysqlx://user_name@(/path/to/socket.sock)
    4, có nghĩa là máy chủ cố gắng đoán. Các phương pháp sau đây được cho phép:

    • mysqlx://user_name@/path%2Fto%2Fsocket.sock
      mysqlx://user_name@(/path/to/socket.sock)
      4

    • mysqlx://user_name@/path%2Fto%2Fsocket.sock
      mysqlx://user_name@(/path/to/socket.sock)
      6

    • mysqlx://user_name@/path%2Fto%2Fsocket.sock
      mysqlx://user_name@(/path/to/socket.sock)
      7

    • mysqlx://user_name@/path%2Fto%2Fsocket.sock
      mysqlx://user_name@(/path/to/socket.sock)
      8

    • mysqlx://user_name@/path%2Fto%2Fsocket.sock
      mysqlx://user_name@(/path/to/socket.sock)
      9

    • # use 'world' as the default database
      mysqlx://[email protected]/world
      
      # use 'world_x' as the default database, encoding _ as %5F
      mysqlx://[email protected]:33060/world%5Fx
      0

    Đối với các kết nối giao thức X, bất kỳ cấu hình

    mysqlx://user_name@/path%2Fto%2Fsocket.sock
    mysqlx://user_name@(/path/to/socket.sock)
    3 nào cũng được ghi đè lên chuỗi các phương thức xác thực này:
    mysqlx://user_name@/path%2Fto%2Fsocket.sock
    mysqlx://user_name@(/path/to/socket.sock)
    6,
    mysqlx://user_name@/path%2Fto%2Fsocket.sock
    mysqlx://user_name@(/path/to/socket.sock)
    7,
    # use 'world' as the default database
    mysqlx://[email protected]/world
    
    # use 'world_x' as the default database, encoding _ as %5F
    mysqlx://[email protected]:33060/world%5Fx
    0.

  • # use 'world' as the default database
    mysqlx://[email protected]/world
    
    # use 'world_x' as the default database, encoding _ as %5F
    mysqlx://[email protected]:33060/world%5Fx
    5: Yêu cầu từ máy chủ Khóa công khai cần thiết cho trao đổi mật khẩu dựa trên cặp khóa RSA. Sử dụng khi kết nối với các máy chủ MySQL 8.0 qua giao thức MySQL cổ điển với chế độ SSL
    mysqlx://user_name@localhost:33065
    3. Bạn phải chỉ định giao thức trong trường hợp này. Ví dụ:

    mysql://user@localhost:3306?get-server-public-key=true

    Tùy chọn này áp dụng cho các máy khách xác thực với plugin xác thực

    # use 'world' as the default database
    mysqlx://[email protected]/world
    
    # use 'world_x' as the default database, encoding _ as %5F
    mysqlx://[email protected]:33060/world%5Fx
    7. Đối với plugin đó, máy chủ không gửi khóa công khai trừ khi được yêu cầu. Tùy chọn này bị bỏ qua cho các tài khoản không xác thực với plugin đó. Nó cũng bị bỏ qua nếu trao đổi mật khẩu dựa trên RSA không được sử dụng, như trường hợp máy khách kết nối với máy chủ bằng kết nối an toàn.

    Nếu

    # use 'world' as the default database
    mysqlx://[email protected]/world
    
    # use 'world_x' as the default database, encoding _ as %5F
    mysqlx://[email protected]:33060/world%5Fx
    8 được cung cấp và chỉ định một tệp khóa công khai hợp lệ, nó sẽ được ưu tiên hơn
    # use 'world' as the default database
    mysqlx://[email protected]/world
    
    # use 'world_x' as the default database, encoding _ as %5F
    mysqlx://[email protected]:33060/world%5Fx
    5.

    Để biết thông tin về plugin

    # use 'world' as the default database
    mysqlx://[email protected]/world
    
    # use 'world_x' as the default database, encoding _ as %5F
    mysqlx://[email protected]:33060/world%5Fx
    7, xem Phần & NBSP; 6.4.1.2, Bộ nhớ đệm SHA-2 có thể thực hiện.

  • ?ssl-ca=%2Froot%2Fclientcert%2Fca-cert.pem\
    &ssl-cert=%2Froot%2Fclientcert%2Fclient-cert.pem\
    &ssl-key=%2Froot%2Fclientcert%2Fclient-key
    
    ?ssl-ca=(/root/clientcert/ca-cert.pem)\
    &ssl-cert=(/root/clientcert/client-cert.pem)\
    &ssl-key=(/root/clientcert/client-key)
    1: Tên đường dẫn đến một tệp ở định dạng PEM chứa bản sao phía máy khách của khóa công khai theo yêu cầu của máy chủ để trao đổi mật khẩu dựa trên cặp khóa RSA. Sử dụng khi kết nối với các máy chủ MySQL 8.0 qua giao thức MySQL cổ điển với chế độ SSL
    mysqlx://user_name@localhost:33065
    3.

    Tùy chọn này áp dụng cho các máy khách xác thực với plugin xác thực

    ?ssl-ca=%2Froot%2Fclientcert%2Fca-cert.pem\
    &ssl-cert=%2Froot%2Fclientcert%2Fclient-cert.pem\
    &ssl-key=%2Froot%2Fclientcert%2Fclient-key
    
    ?ssl-ca=(/root/clientcert/ca-cert.pem)\
    &ssl-cert=(/root/clientcert/client-cert.pem)\
    &ssl-key=(/root/clientcert/client-key)
    3 hoặc
    # use 'world' as the default database
    mysqlx://[email protected]/world
    
    # use 'world_x' as the default database, encoding _ as %5F
    mysqlx://[email protected]:33060/world%5Fx
    7. Tùy chọn này bị bỏ qua cho các tài khoản không xác thực với một trong những plugin đó. Nó cũng bị bỏ qua nếu trao đổi mật khẩu dựa trên RSA không được sử dụng, như trường hợp máy khách kết nối với máy chủ bằng kết nối an toàn.

    Nếu

    # use 'world' as the default database
    mysqlx://[email protected]/world
    
    # use 'world_x' as the default database, encoding _ as %5F
    mysqlx://[email protected]:33060/world%5Fx
    8 được cung cấp và chỉ định một tệp khóa công khai hợp lệ, nó sẽ được ưu tiên hơn
    # use 'world' as the default database
    mysqlx://[email protected]/world
    
    # use 'world_x' as the default database, encoding _ as %5F
    mysqlx://[email protected]:33060/world%5Fx
    5.

    Để biết thông tin về plugin

    # use 'world' as the default database
    mysqlx://[email protected]/world
    
    # use 'world_x' as the default database, encoding _ as %5F
    mysqlx://[email protected]:33060/world%5Fx
    7, xem Phần & NBSP; 6.4.1.2, Bộ nhớ đệm SHA-2 có thể thực hiện.

  • ?ssl-ca=%2Froot%2Fclientcert%2Fca-cert.pem\
    &ssl-cert=%2Froot%2Fclientcert%2Fclient-cert.pem\
    &ssl-key=%2Froot%2Fclientcert%2Fclient-key
    
    ?ssl-ca=(/root/clientcert/ca-cert.pem)\
    &ssl-cert=(/root/clientcert/client-cert.pem)\
    &ssl-key=(/root/clientcert/client-key)
    1: Tên đường dẫn đến một tệp ở định dạng PEM chứa bản sao phía máy khách của khóa công khai theo yêu cầu của máy chủ để trao đổi mật khẩu dựa trên cặp khóa RSA. Sử dụng khi kết nối với các máy chủ MySQL 8.0 qua giao thức MySQL cổ điển với chế độ SSL
    mysqlx://user_name@localhost:33065
    3.

  • Tùy chọn này áp dụng cho các máy khách xác thực với plugin xác thực

    ?ssl-ca=%2Froot%2Fclientcert%2Fca-cert.pem\
    &ssl-cert=%2Froot%2Fclientcert%2Fclient-cert.pem\
    &ssl-key=%2Froot%2Fclientcert%2Fclient-key
    
    ?ssl-ca=(/root/clientcert/ca-cert.pem)\
    &ssl-cert=(/root/clientcert/client-cert.pem)\
    &ssl-key=(/root/clientcert/client-key)
    3 hoặc
    # use 'world' as the default database
    mysqlx://[email protected]/world
    
    # use 'world_x' as the default database, encoding _ as %5F
    mysqlx://[email protected]:33060/world%5Fx
    7. Tùy chọn này bị bỏ qua cho các tài khoản không xác thực với một trong những plugin đó. Nó cũng bị bỏ qua nếu trao đổi mật khẩu dựa trên RSA không được sử dụng, như trường hợp máy khách kết nối với máy chủ bằng kết nối an toàn.

  • mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    10: Mật khẩu cho kết nối với máy chủ SSH.

    Cảnh báo

    Chỉ định một mật khẩu rõ ràng trong đặc tả kết nối là không an toàn và không được khuyến nghị. MySQL Shell nhắc nhở mật khẩu tương tác khi cần thiết.

  • mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    11: Tệp cấu hình SSH cho kết nối với máy chủ SSH. Bạn có thể sử dụng tùy chọn cấu hình shell MySQL
    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    12 để đặt tệp tùy chỉnh làm mặc định nếu tùy chọn này không được chỉ định. Nếu
    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    12 chưa được đặt, mặc định là tệp cấu hình SSH tiêu chuẩn
    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    14.

  • mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    15: Tệp nhận dạng để sử dụng cho kết nối với máy chủ SSH. Mặc định nếu tùy chọn này không được chỉ định là bất kỳ tệp nhận dạng nào được định cấu hình trong một tác nhân SSH (nếu được sử dụng) hoặc trong tệp cấu hình SSH hoặc tệp khóa riêng tiêu chuẩn trong thư mục cấu hình SSH (
    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    16).

  • mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    17: Cụm mật khẩu cho tệp nhận dạng được chỉ định bởi tùy chọn
    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    15.

    Cảnh báo

    Chỉ định một mật khẩu rõ ràng trong đặc tả kết nối là không an toàn và không được khuyến nghị. MySQL Shell nhắc nhở mật khẩu tương tác khi cần thiết.

  • mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    11: Tệp cấu hình SSH cho kết nối với máy chủ SSH. Bạn có thể sử dụng tùy chọn cấu hình shell MySQL
    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    12 để đặt tệp tùy chỉnh làm mặc định nếu tùy chọn này không được chỉ định. Nếu
    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    12 chưa được đặt, mặc định là tệp cấu hình SSH tiêu chuẩn
    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    14.

  • mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    15: Tệp nhận dạng để sử dụng cho kết nối với máy chủ SSH. Mặc định nếu tùy chọn này không được chỉ định là bất kỳ tệp nhận dạng nào được định cấu hình trong một tác nhân SSH (nếu được sử dụng) hoặc trong tệp cấu hình SSH hoặc tệp khóa riêng tiêu chuẩn trong thư mục cấu hình SSH (
    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    16).

    • mysqlx://user@host?connection-attributes
      mysqlx://user@host?connection-attributes=true
      mysqlx://user@host?connection-attributes=false
      17: Cụm mật khẩu cho tệp nhận dạng được chỉ định bởi tùy chọn
      mysqlx://user@host?connection-attributes
      mysqlx://user@host?connection-attributes=true
      mysqlx://user@host?connection-attributes=false
      15.

    • mysqlx://user@host?connection-attributes
      mysqlx://user@host?connection-attributes=true
      mysqlx://user@host?connection-attributes=false
      19: Giá trị số nguyên được sử dụng để định cấu hình số giây mà máy khách, chẳng hạn như MySQL Shell, đợi cho đến khi họ ngừng cố gắng kết nối với máy chủ MySQL không phản hồi.

    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    20: Tùy chọn này yêu cầu hoặc vô hiệu hóa nén cho kết nối. Lên đến MySQL 8.0.19 Nó chỉ hoạt động cho các kết nối giao thức MySQL cổ điển và từ MySQL 8.0.20, nó cũng hoạt động cho các kết nối giao thức X.

  • Lên đến MySQL 8.0.19, các giá trị cho tùy chọn này là

    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    21 (hoặc 1) cho phép nén và mặc định
    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    22 (hoặc 0) vô hiệu hóa nén.

  • Từ MySQL 8.0.20, các giá trị cho tùy chọn này là

    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    23, yêu cầu nén và không thành công nếu máy chủ không hỗ trợ nó;
    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    24, yêu cầu nén và rơi trở lại kết nối không nén; và
    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    25, yêu cầu kết nối không nén và không thành công nếu máy chủ không cho phép chúng.
    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    24 là mặc định cho các kết nối giao thức X và
    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    25 là mặc định cho các kết nối giao thức MySQL cổ điển. Để biết thông tin về điều khiển nén kết nối plugin X, xem Phần & NBSP; 20.5.5, nén kết nối với plugin x plugin.

    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false

    Lưu ý rằng các máy khách MySQL khác nhau thực hiện hỗ trợ của họ để nén kết nối khác nhau. Tham khảo tài liệu của khách hàng của bạn để biết chi tiết.

    mysqlx://user@host?connection-attributes=[attr1=val1,attr2,attr3=]
    mysqlx://user@host?connection-attributes=[]

    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    28 và
    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    29: Các tùy chọn này có sẵn trong MySQL Shell 8.0.20 và sau đó để kiểm soát nhiều hơn đối với nén kết nối. Bạn có thể chỉ định chúng để chọn thuật toán nén được sử dụng cho kết nối và mức nén số được sử dụng với thuật toán đó. Bạn cũng có thể sử dụng
    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    28 thay cho
    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    20 để yêu cầu nén cho kết nối. Để biết thông tin về điều khiển nén kết nối của Shell Shell, hãy xem bằng cách sử dụng các kết nối nén.

mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
32: Kiểm soát các cặp giá trị khóa mà các chương trình ứng dụng chuyển đến máy chủ tại thời điểm kết nối. Để biết thông tin chung về các thuộc tính kết nối, xem Phần & NBSP; 27.12.9, Bảng thuộc tính kết nối Lược đồ hiệu suất. Máy khách thường xác định một tập hợp các thuộc tính mặc định, có thể bị vô hiệu hóa hoặc bật. Ví dụ:

Hành vi mặc định là gửi bộ thuộc tính mặc định. Các ứng dụng có thể chỉ định các thuộc tính sẽ được truyền ngoài các thuộc tính mặc định. Bạn chỉ định các thuộc tính kết nối bổ sung là tham số

mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
32 trong chuỗi kết nối. Giá trị tham số
mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
32 phải trống (giống như chỉ định
mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
21), giá trị
mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
36 (
mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
21 hoặc
mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
22 để bật hoặc vô hiệu hóa thuộc tính mặc định) hoặc danh sách hoặc nhiều hơn đến bộ thuộc tính mặc định). Trong danh sách, một giá trị khóa bị thiếu đánh giá là một chuỗi trống. Ví dụ thêm:

Tên thuộc tính do ứng dụng xác định không thể bắt đầu bằng

mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
40 vì các tên đó được dành riêng cho các thuộc tính nội bộ.

Kết nối bằng các chuỗi kết nối giống UriURI-like signifies connection-string syntax that is similar to but not identical to the URI (uniform resource identifier) syntax defined by RFC 3986.

Bạn có thể chỉ định kết nối với máy chủ MySQL bằng chuỗi giống URI. Các chuỗi như vậy có thể được sử dụng với vỏ MySQL với tùy chọn lệnh

mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
41, lệnh mySQL shell
mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
42 và các đầu nối MySQL triển khai X Devapi.

[scheme://][user[:[password]]@]host[:port][/schema][?attribute1=value1&attribute2=value2...

Ghi chú

Mã hóa phần trăm phải được sử dụng cho các ký tự dành riêng trong các yếu tố của chuỗi giống URI. Ví dụ: nếu bạn chỉ định một chuỗi bao gồm ký tự

mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
43, ký tự phải được thay thế bằng
mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
44. Nếu bạn bao gồm ID vùng trong địa chỉ IPv6, ký tự
mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
45 được sử dụng làm dấu phân cách phải được thay thế bằng
mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
46.

Các tham số bạn có thể sử dụng trong chuỗi kết nối giống URI được mô tả tại các tham số kết nối cơ sở.

Có thể sử dụng các phương thức

mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
47 và
mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
48 của MySQL Shell để giải mã và lắp ráp chuỗi kết nối giống URI. Đưa ra một chuỗi kết nối giống URI,
mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
47 trả về một từ điển chứa từng phần tử được tìm thấy trong chuỗi.
mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
48 Chuyển đổi từ điển các thành phần URI và các tùy chọn kết nối thành chuỗi kết nối giống như URI hợp lệ để kết nối với MySQL, có thể được sử dụng trong Shell MySQL hoặc các đầu nối MySQL triển khai X Devapi.

Nếu không có mật khẩu được chỉ định trong chuỗi giống như URI, được khuyến nghị, các máy khách tương tác nhắc nhở mật khẩu. Các ví dụ sau đây cho thấy cách chỉ định các chuỗi giống URI với tên người dùng

mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
51. Trong mỗi trường hợp, mật khẩu được nhắc.

  • Kết nối giao thức X với phiên bản máy chủ cục bộ nghe tại cổng 33065.

    mysqlx://user_name@localhost:33065
  • Kết nối giao thức MySQL cổ điển với phiên bản máy chủ cục bộ nghe tại cổng 3333.

    mysql://user_name@localhost:3333
  • Kết nối giao thức X với phiên bản máy chủ từ xa, sử dụng tên máy chủ, địa chỉ IPv4 và địa chỉ IPv6.

    mysqlx://[email protected]/
    mysqlx://[email protected]:123
    mysqlx://user_name@[2001:db8:85a3:8d3:1319:8a2e:370:7348]
  • Kết nối giao thức X bằng cách sử dụng ổ cắm, với đường dẫn được cung cấp bằng cách sử dụng phần trăm mã hóa hoặc dấu ngoặc đơn.

    mysqlx://user_name@/path%2Fto%2Fsocket.sock
    mysqlx://user_name@(/path/to/socket.sock)
  • Một đường dẫn tùy chọn có thể được chỉ định, đại diện cho một cơ sở dữ liệu.

    # use 'world' as the default database
    mysqlx://[email protected]/world
    
    # use 'world_x' as the default database, encoding _ as %5F
    mysqlx://[email protected]:33060/world%5Fx
  • Một truy vấn tùy chọn có thể được chỉ định, bao gồm các giá trị được đưa ra dưới dạng một cặp ________ 152 = ________ 153 hoặc như một

    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    54. Để chỉ định nhiều giá trị, hãy tách chúng bằng
    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    55 ký tự. Một hỗn hợp của ________ 152 = ________ 153 và
    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    54 giá trị được cho phép. Các giá trị có thể là danh sách loại, với các giá trị danh sách được đặt hàng theo ngoại hình. Chuỗi phải được mã hóa phần trăm hoặc được bao quanh bởi dấu ngoặc đơn. Sau đây là tương đương.

    ?ssl-ca=%2Froot%2Fclientcert%2Fca-cert.pem\
    &ssl-cert=%2Froot%2Fclientcert%2Fclient-cert.pem\
    &ssl-key=%2Froot%2Fclientcert%2Fclient-key
    
    ?ssl-ca=(/root/clientcert/ca-cert.pem)\
    &ssl-cert=(/root/clientcert/client-cert.pem)\
    &ssl-key=(/root/clientcert/client-key)
  • Để chỉ định phiên bản TLS và Ciphersuite để sử dụng cho các kết nối được mã hóa:

    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    0

Các ví dụ trước cho rằng các kết nối yêu cầu mật khẩu. Với các máy khách tương tác, mật khẩu của người dùng được chỉ định được yêu cầu tại dấu nhắc đăng nhập. Nếu tài khoản người dùng không có mật khẩu (không an toàn và không được khuyến nghị) hoặc nếu sử dụng xác thực tín dụng ngang hàng của ổ cắm và không cần phải nhắc nhở mật khẩu. Để thực hiện việc này, hãy đặt một

mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
59 sau
mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
51 vào chuỗi nhưng không chỉ định mật khẩu sau nó. Ví dụ:

mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
1

Kết nối bằng cách sử dụng các cặp giá trị khóa

Trong MySQL Shell và một số đầu nối MySQL triển khai X Devapi, bạn có thể chỉ định kết nối với máy chủ MySQL bằng các cặp giá trị khóa, được cung cấp trong các cấu trúc tự nhiên ngôn ngữ để triển khai. Ví dụ: bạn có thể cung cấp các tham số kết nối bằng các cặp giá trị khóa làm đối tượng JSON trong JavaScript hoặc như một từ điển trong Python. Bất kể cách cung cấp các cặp giá trị khóa được cung cấp, khái niệm vẫn giữ nguyên: các khóa như được mô tả trong phần này có thể được gán các giá trị được sử dụng để chỉ định kết nối. Bạn có thể chỉ định các kết nối bằng các cặp giá trị khóa trong phương thức

mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
61 của MySQL Shell hoặc phương thức
mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
62 của Innodb Cluster và với một số đầu nối MySQL triển khai X Devapi.

Nói chung, các cặp giá trị khóa được bao quanh bởi các ký tự

mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
63 và
mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
64 và ký tự
mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
55 được sử dụng làm phân tách giữa các cặp giá trị khóa. Ký tự
mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
59 được sử dụng giữa các khóa và giá trị và các chuỗi phải được phân định (ví dụ: sử dụng ký tự
mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
67). Không cần thiết để phần trăm mã mã hóa chuỗi, không giống như các chuỗi kết nối giống URI.

Một kết nối được chỉ định là các cặp giá trị khóa có định dạng sau:

mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
2

Các tham số bạn có thể sử dụng làm khóa cho kết nối được mô tả tại các tham số kết nối cơ sở.

Nếu không có mật khẩu được chỉ định trong các cặp giá trị khóa, được khuyến nghị, các máy khách tương tác nhắc nhở mật khẩu. Các ví dụ sau đây cho thấy cách chỉ định các kết nối bằng các cặp giá trị khóa với tên người dùng '

mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
51'. Trong mỗi trường hợp, mật khẩu được nhắc.'
mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
51'
. In each case, the password is prompted for.

  • Kết nối giao thức X với phiên bản máy chủ cục bộ nghe tại cổng 33065.

    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    3
  • Kết nối giao thức MySQL cổ điển với phiên bản máy chủ cục bộ nghe tại cổng 3333.

    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    4
  • Kết nối giao thức X với phiên bản máy chủ từ xa, sử dụng tên máy chủ, địa chỉ IPv4 và địa chỉ IPv6.

    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    5
  • Kết nối giao thức X bằng cách sử dụng ổ cắm.

    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    6
  • Một lược đồ tùy chọn có thể được chỉ định, đại diện cho một cơ sở dữ liệu.

    mysqlx://user@host?connection-attributes
    mysqlx://user@host?connection-attributes=true
    mysqlx://user@host?connection-attributes=false
    7

Các ví dụ trước cho rằng các kết nối yêu cầu mật khẩu. Với các máy khách tương tác, mật khẩu của người dùng được chỉ định được yêu cầu tại dấu nhắc đăng nhập. Nếu tài khoản người dùng không có mật khẩu (không an toàn và không được khuyến nghị) hoặc nếu sử dụng xác thực tín dụng ngang hàng của ổ cắm không được yêu cầu. Để thực hiện việc này, cung cấp một chuỗi trống bằng cách sử dụng

mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
69 sau khóa
mysqlx://user@host?connection-attributes=[attr1=val1,attr2,attr3=]
mysqlx://user@host?connection-attributes=[]
6. Ví dụ:

mysqlx://user@host?connection-attributes
mysqlx://user@host?connection-attributes=true
mysqlx://user@host?connection-attributes=false
8

Làm cách nào để tìm chuỗi kết nối MySQL?

Trình điều khiển = {mysql}; server = myserveraddress; port = 3306; tùy chọn = 131072; stmt =; cơ sở dữ liệu = mydatabase; user = myusername; password = myPassword; Trình điều khiển mặc định là giá trị cổng 3306, nếu không được chỉ định trong chuỗi kết nối, vì 3306 là cổng mặc định cho MySQL. The driver defaults to port value 3306, if not specified in the connection string, as 3306 is the default port for MySQL.

Chuỗi kết nối của bạn là gì?

Trong tính toán, một chuỗi kết nối là một chuỗi chỉ định thông tin về nguồn dữ liệu và phương tiện kết nối với nó.Nó được chuyển trong mã cho một trình điều khiển hoặc nhà cung cấp cơ bản để bắt đầu kết nối.a string that specifies information about a data source and the means of connecting to it. It is passed in code to an underlying driver or provider in order to initiate the connection.

Việc sử dụng chuỗi kết nối là gì?

Các ứng dụng sử dụng các chuỗi kết nối để xác định cá thể và cơ sở dữ liệu máy chủ để kết nối và xác định trình điều khiển, đăng nhập, v.v. để sử dụng để kết nối với phiên bản SQL Server.Thông thường, chuỗi kết nối sẽ được lưu trữ trong tệp cấu hình ở đâu đó trong ứng dụng hoặc máy chủ web.to identify the server instance and database to connect to and to determine what driver, login, etc. to use to connect to the SQL Server instance. Typically, the connection string will be stored in a configuration file somewhere within the application or web server.

Chuỗi kết nối chứa bao nhiêu?

Một chuỗi kết nối chứa thông tin khởi tạo được truyền dưới dạng tham số từ nhà cung cấp dữ liệu sang nguồn dữ liệu.Nhà cung cấp dữ liệu nhận được chuỗi kết nối dưới dạng giá trị của DBConnection.initialization information that is passed as a parameter from a data provider to a data source. The data provider receives the connection string as the value of the DbConnection.