Làm cách nào để hạ cấp bàn làm việc mysql?

Bạn luôn có thể di chuyển các tệp dữ liệu và biểu mẫu MySQL giữa các phiên bản khác nhau trên cùng một kiến ​​trúc miễn là bạn có cùng một phiên bản cơ sở của MySQL. Phiên bản cơ sở hiện tại là 3. Nếu bạn thay đổi bộ ký tự khi chạy MySQL (điều này cũng có thể thay đổi thứ tự sắp xếp), bạn phải chạy myisamchk -r -q trên tất cả các bảng. Nếu không, các chỉ mục của bạn có thể không được sắp xếp chính xác

Nếu bạn sợ các phiên bản mới, bạn luôn có thể đổi tên mysqld cũ của mình thành mysqld-old-version-number. Nếu mysqld mới của bạn sau đó làm điều gì đó không mong muốn, bạn chỉ cần tắt nó và khởi động lại với mysqld cũ của bạn

Tất nhiên, khi bạn nâng cấp, bạn cũng nên sao lưu cơ sở dữ liệu cũ của mình

Nếu sau khi nâng cấp, bạn gặp sự cố với các chương trình máy khách được biên dịch lại, chẳng hạn như Lệnh không đồng bộ hoặc kết xuất lõi không mong muốn, thì có thể bạn đã sử dụng tệp thư viện hoặc tiêu đề cũ khi biên dịch chương trình của mình. Trong trường hợp này, bạn nên kiểm tra ngày của tệp

shell> mysqladmin -h 'other hostname' create db_name
shell> mysqldump --opt db_name \
        | mysql -h 'other hostname' db_name
7 và thư viện
shell> mysqladmin -h 'other hostname' create db_name
shell> mysqldump --opt db_name \
        | mysql -h 'other hostname' db_name
8 để xác minh rằng chúng đến từ bản phân phối MySQL mới. Nếu không, vui lòng biên dịch lại chương trình của bạn

Nếu bạn gặp một số vấn đề khiến máy chủ mysqld mới không muốn khởi động hoặc bạn không thể kết nối mà không có mật khẩu, hãy kiểm tra để đảm bảo rằng bạn không có một số tệp

shell> mysqladmin -h 'other hostname' create db_name
shell> mysqldump --opt db_name \
        | mysql -h 'other hostname' db_name
9 cũ từ bản cài đặt cũ của mình. Bạn có thể kiểm tra điều này với. tên chương trình --print-defaults. Nếu điều này xuất ra bất kỳ thứ gì khác ngoài tên chương trình, bạn có một tệp
shell> mysqladmin -h 'other hostname' create db_name
shell> mysqldump --opt db_name \
        | mysql -h 'other hostname' db_name
9 đang hoạt động sẽ ảnh hưởng đến mọi thứ

Bạn nên xây dựng lại và cài đặt lại bản phân phối mô-đun Msql-Mysql bất cứ khi nào bạn cài đặt một bản phát hành mới của MySQL, đặc biệt nếu bạn nhận thấy các triệu chứng chẳng hạn như tất cả các tập lệnh DBI của bạn đều đổ lõi sau khi bạn nâng cấp MySQL

Nâng cấp từ Phiên bản 3. 23 đến Phiên bản 4. 0

Bạn có thể sử dụng các tệp dữ liệu cũ của mình mà không cần sửa đổi gì với Phiên bản 4. 0. Nếu bạn muốn di chuyển dữ liệu của mình từ MySQL 4. 0 sang máy chủ cũ hơn, bạn phải sử dụng mysqldump

Máy khách cũ nên hoạt động với Phiên bản 4. 0 máy chủ mà không gặp bất kỳ sự cố nào

Các danh sách sau đây cho biết những gì bạn phải chú ý khi nâng cấp lên phiên bản 4. 0;

  • Các cột DOUBLE và FLOAT hiện đang tôn vinh cờ UNSIGNED trên bộ lưu trữ (trước đây, UNSIGNED bị bỏ qua đối với các cột này)

  • Sử dụng ORDER BY cột DESC hiện luôn sắp xếp các giá trị NULL trước; . 23 điều này không phải lúc nào cũng nhất quán

  • SHOW INDEX có thêm 2 cột (Null và Index_type) so với cột 3. 23

  • SIGNED là một từ dành riêng

  • The result of all bitwise operators |, &, <<, >>, and ~ is now unsigned. This may cause problems if you are using them in a context where you want a signed result. See .

  • Ghi chú. khi bạn sử dụng phép trừ giữa các giá trị số nguyên trong đó một giá trị thuộc loại UNSIGNED, kết quả sẽ không được ký. Nói cách khác, trước khi nâng cấp lên MySQL 4. 0, bạn nên kiểm tra ứng dụng của mình để biết các trường hợp bạn đang trừ một giá trị từ một thực thể không dấu và muốn có một câu trả lời phủ định hoặc trừ một giá trị không dấu từ một cột số nguyên. Bạn có thể vô hiệu hóa hành vi này bằng cách sử dụng tùy chọn --sql-mode=NO_UNSIGNED_SUBTRACTION khi bắt đầu mysqld. Thấy

  • Để sử dụng MATCH. CHỐNG LẠI (. TRONG CHẾ ĐỘ BOOLESE) với các bảng của mình, bạn cần xây dựng lại chúng bằng ALTER TABLE tên_bảng TYPE=MyISAM, ngay cả khi chúng thuộc loại MyISAM

  • LOCATE( ) và INSTR( ) phân biệt chữ hoa chữ thường nếu một trong các đối số là một chuỗi nhị phân

  • STRCMP( ) hiện sử dụng bộ ký tự hiện tại khi thực hiện so sánh, điều đó có nghĩa là hành vi so sánh mặc định hiện tại không phân biệt chữ hoa chữ thường

  • HEX(string) hiện trả về các ký tự trong chuỗi được chuyển đổi thành hệ thập lục phân. Nếu bạn muốn chuyển đổi một số sang hệ thập lục phân, bạn phải đảm bảo rằng bạn gọi hàm HEX() với một đối số là số

  • Trong 3. 23, CHÈN VÀO. CHỌN luôn được bật BỎ QUA. trong 4. 0. 1, MySQL sẽ dừng (và có thể khôi phục) trong trường hợp có lỗi nếu bạn không chỉ định BỎ QUA

  • shell> mysqladmin -h 'other hostname' create db_name
    shell> mysqldump --opt db_name \
            | mysql -h 'other hostname' db_name
    1 được đổi tên thành
    shell> mysqladmin -h 'other hostname' create db_name
    shell> mysqldump --opt db_name \
            | mysql -h 'other hostname' db_name
    2

  • Các chức năng API C cũ mysql_drop_db, mysql_create_db và mysql_connect không được hỗ trợ nữa, trừ khi bạn biên dịch MySQL với CFLAGS=-DUSE_OLD_FUNCTIONS. Thay vì làm điều này, tốt hơn là thay đổi máy khách để sử dụng 4 cái mới. 0 API

  • Trong cấu trúc MYSQL_FIELD, độ dài và max_length đã thay đổi từ unsigned int thành unsigned long. Điều này sẽ không gây ra bất kỳ vấn đề nào khác ngoài một số cảnh báo nếu bạn sử dụng những vấn đề này cho chức năng gõ printf()

  • Bạn nên sử dụng TRUNCATE TABLE khi muốn xóa tất cả các hàng khỏi một bảng và không cần quan tâm có bao nhiêu hàng đã bị xóa. (Vì TRUNCATE TABLE nhanh hơn DELETE FROM table_name)

  • Bạn sẽ gặp lỗi nếu bạn có một LOCK TABLES hoặc giao dịch đang hoạt động khi cố gắng thực hiện TRUNCATE TABLE hoặc DROP DATABASE

  • Bạn nên sử dụng số nguyên để lưu trữ giá trị trong cột BIGINT (thay vì sử dụng chuỗi, như bạn đã làm trong MySQL 3. 23). Sử dụng chuỗi vẫn sẽ hoạt động, nhưng sử dụng số nguyên sẽ hiệu quả hơn

  • Định dạng của SHOW OPEN TABLE đã thay đổi

  • Máy khách đa luồng nên sử dụng mysql_thread_init() và mysql_thread_end(). Nhìn thấy

  • Nếu bạn muốn biên dịch lại Perl DBD. mô-đun mysql, bạn phải lấy Msql-Mysql-modules phiên bản 1. 2218 hoặc mới hơn vì các mô-đun DBD cũ hơn đã sử dụng lệnh gọi drop_db( ) không dùng nữa

  • RAND(hạt giống) trả về một chuỗi số ngẫu nhiên khác trong 4. 0 so với 3. 23;

Nâng cấp từ Phiên bản 3. 22 đến Phiên bản 3. 23

Phiên bản MySQL 3. 23 hỗ trợ các bảng kiểu MyISAM mới và kiểu ISAM cũ. Bạn không cần phải chuyển đổi các bảng cũ của mình để sử dụng các bảng này với Phiên bản 3. 23. Theo mặc định, tất cả các bảng mới sẽ được tạo với kiểu MyISAM (trừ khi bạn bắt đầu mysqld với tùy chọn --default-table-type=isam). Bạn có thể thay đổi bảng ISAM thành bảng MyISAM bằng ALTER TABLE tên_bảng TYPE=MyISAM hoặc tập lệnh Perl mysql_convert_table_format

Phiên bản 3. 22 và 3. 21 khách hàng sẽ hoạt động mà không gặp bất kỳ sự cố nào với Phiên bản 3. 23 máy chủ

Danh sách sau đây cho biết những điều bạn phải chú ý khi nâng cấp lên Phiên bản 3. 23

  • Tất cả các bảng sử dụng bộ ký tự tis620 phải được sửa bằng myisamchk -r hoặc REPAIR TABLE

  • Nếu bạn thực hiện DROP DATABASE trên cơ sở dữ liệu được liên kết tượng trưng, ​​cả liên kết và cơ sở dữ liệu ban đầu đều bị xóa. (Điều này đã không xảy ra trong 3. 22 vì cấu hình không phát hiện lệnh gọi hệ thống liên kết đọc. )

  • TỐI ƯU HÓA BẢNG hiện chỉ hoạt động với các bảng MyISAM. Đối với các loại bảng khác, bạn có thể sử dụng ALTER TABLE để tối ưu hóa bảng. Trong quá trình TỐI ƯU HÓA BẢNG, bảng hiện đã bị khóa khỏi các chủ đề khác

  • Máy khách MySQL mysql hiện được bắt đầu theo mặc định với tùy chọn --no-named-commands (-g). Có thể tắt tùy chọn này bằng --enable-named-commands (-G). Điều này có thể gây ra sự cố không tương thích trong một số trường hợp—ví dụ: trong các tập lệnh SQL sử dụng các lệnh được đặt tên không có dấu chấm phẩy. Các lệnh định dạng dài vẫn hoạt động từ dòng đầu tiên

  • Các hàm ngày hoạt động trên các phần của ngày (như MONTH()) giờ đây sẽ trả về 0 cho các ngày 0000-00-00. (MySQL3. 22 trả về NULL. )

  • Nếu bạn đang sử dụng thứ tự sắp xếp ký tự tiếng Đức, bạn phải sửa chữa tất cả các bảng của mình bằng isamchk -r, vì chúng tôi đã thực hiện một số thay đổi trong thứ tự sắp xếp

  • Kiểu trả về mặc định của IF bây giờ sẽ phụ thuộc vào cả hai đối số chứ không chỉ đối số đầu tiên

  • AUTO_INCREMENT sẽ không hoạt động với số âm. Lý do cho điều này là các số âm gây ra sự cố khi gói từ -1 đến 0. AUTO_INCREMENT cho các bảng MyISAM không được xử lý ở mức thấp hơn và nhanh hơn nhiều so với trước đây. Đối với các bảng MyISAM, các số cũ cũng không được sử dụng lại nữa, ngay cả khi bạn xóa một số hàng khỏi bảng

  • CASE, DELAYED, ELSE, END, FULLTEXT, INNER, RIGHT, THEN và WHEN hiện là các từ dành riêng

  • FLOAT(X) hiện là loại dấu phẩy động thực và không phải là giá trị có số thập phân cố định

  • Khi khai báo DECIMAL(length,dec) đối số độ dài không còn bao gồm vị trí cho dấu hoặc dấu thập phân

  • Chuỗi THỜI GIAN hiện phải thuộc một trong các định dạng sau. [[[DAYS] [H]H. ]MM. ]SS[. phân số] hoặc [[[[[H]H]H]H]MM]SS[. phân số]

  • LIKE bây giờ so sánh các chuỗi bằng cách sử dụng các quy tắc so sánh ký tự giống như =. Nếu bạn yêu cầu hành vi cũ, bạn có thể biên dịch MySQL bằng cờ CXXFLAGS=-DLIKE_CMP_TOUPPER

  • REGEXP hiện không phân biệt chữ hoa chữ thường đối với các chuỗi bình thường (không phải nhị phân)

  • Khi bạn kiểm tra/sửa chữa các bảng, bạn nên sử dụng CHECK TABLE hoặc myisamchk cho các bảng MyISAM (

    shell> mysqladmin -h 'other hostname' create db_name
    shell> mysqldump --opt db_name \
            | mysql -h 'other hostname' db_name
    3) và isamchk cho các bảng ISAM (
    shell> mysqladmin -h 'other hostname' create db_name
    shell> mysqldump --opt db_name \
            | mysql -h 'other hostname' db_name
    4)

  • Nếu bạn muốn các tệp mysqldump của mình tương thích giữa MySQL Phiên bản 3. 22 và Phiên bản 3. 23, bạn không nên sử dụng tùy chọn --opt hoặc --full cho mysqldump

  • Kiểm tra tất cả các cuộc gọi của bạn đến DATE_FORMAT( ) để đảm bảo rằng có một

    shell> mysqladmin -h 'other hostname' create db_name
    shell> mysqldump --opt db_name \
            | mysql -h 'other hostname' db_name
    5 trước mỗi ký tự định dạng. (Phiên bản MySQL 3. 22 đã cho phép cú pháp này. )

  • mysql_fetch_fields_direct hiện là một hàm (nó là một macro) và nó trả về một con trỏ tới MYSQL_FIELD thay vì MYSQL_FIELD

  • mysql_num_fields( ) không còn có thể được sử dụng trên đối tượng MYSQL* (hiện tại nó là một hàm lấy MYSQL_RES* làm đối số, vì vậy bạn nên sử dụng mysql_field_count( ) thay thế)

  • Trong phiên bản MySQL 3. 22, đầu ra của SELECT DISTINCT. hầu như luôn luôn được sắp xếp. Trong phiên bản 3. 23, bạn phải sử dụng GROUP BY hoặc ORDER BY để có được đầu ra đã sắp xếp

  • SUM( ) hiện trả về NULL, thay vì 0, nếu không có hàng nào phù hợp. Đây là theo ANSI SQL

  • AND hoặc OR với giá trị NULL sẽ trả về NULL thay vì 0. Điều này chủ yếu ảnh hưởng đến các truy vấn không sử dụng biểu thức AND/OR như NOT NULL = NULL. LPAD( ) và RPAD( ) sẽ rút ngắn chuỗi kết quả nếu nó dài hơn đối số độ dài

Nâng cấp từ Phiên bản 3. 21 đến Phiên bản 3. 22

Không có gì ảnh hưởng đến khả năng tương thích đã thay đổi giữa các phiên bản 3. 21 và 3. 22. Điều đáng tiếc duy nhất là các bảng mới được tạo với các cột loại NGÀY sẽ sử dụng cách mới để lưu trữ ngày tháng. Bạn không thể truy cập các trường mới này từ phiên bản cũ của mysqld

Sau khi cài đặt MySQL Phiên bản 3. 22, bạn nên khởi động máy chủ mới và sau đó chạy tập lệnh mysql_fix_privilege_tables. Thao tác này sẽ thêm các đặc quyền mới mà bạn cần để sử dụng lệnh GRANT. Nếu quên điều này, bạn sẽ bị Từ chối truy cập khi cố gắng sử dụng ALTER TABLE, CREATE INDEX hoặc DROP INDEX. Nếu người dùng root MySQL của bạn yêu cầu mật khẩu, bạn nên cung cấp mật khẩu này làm đối số cho mysql_fix_privilege_tables

Giao diện C API tới mysql_real_connect( ) đã thay đổi. Nếu bạn có một chương trình máy khách cũ gọi hàm này, bạn phải đặt 0 cho đối số db mới (hoặc mã hóa lại máy khách để gửi phần tử db để kết nối nhanh hơn). Bạn cũng phải gọi mysql_init() trước khi gọi mysql_real_connect(). Thay đổi này được thực hiện để cho phép hàm mysql_options( ) mới lưu các tùy chọn trong cấu trúc trình xử lý MYSQL

Biến mysqld key_buffer đã đổi tên thành key_buffer_size, nhưng bạn vẫn có thể sử dụng tên cũ trong các tệp khởi động của mình

Nâng cấp từ Phiên bản 3. 20 đến Phiên bản 3. 21

Nếu bạn đang chạy phiên bản cũ hơn Phiên bản 3. 20. 28 và muốn chuyển sang Phiên bản 3. 21, bạn cần làm như sau

Bạn có thể bắt đầu phiên bản mysqld 3. 21 với safe_mysqld --old-protocol để sử dụng nó với các máy khách từ Phiên bản 3. 20 phân phối. Trong trường hợp này, chức năng máy khách mới mysql_errno( ) sẽ không trả về bất kỳ lỗi máy chủ nào, chỉ trả về CR_UNKNOWN_ERROR (nhưng nó hoạt động với các lỗi máy khách) và máy chủ sử dụng kiểm tra mật khẩu cũ( ) thay vì kiểm tra mật khẩu mới

Nếu bạn không sử dụng tùy chọn --old-protocol cho mysqld, bạn sẽ cần thực hiện các thay đổi sau

  • Tất cả mã máy khách phải được biên dịch lại. Nếu bạn đang sử dụng ODBC, bạn phải có MyODBC 2 mới. trình điều khiển x

  • Tập lệnh scripts/add_long_password phải được chạy để chuyển đổi trường Mật khẩu trong mysql. bảng người dùng thành CHAR(16)

  • Tất cả mật khẩu phải được gán lại trong mysql. bảng người dùng (để nhận mật khẩu 62 bit thay vì 31 bit)

  • Định dạng bảng không thay đổi nên bạn không phải chuyển đổi bất kỳ bảng nào

Phiên bản MySQL 3. 20. 28 trở lên có thể xử lý định dạng bảng người dùng mới mà không ảnh hưởng đến máy khách. Nếu bạn có phiên bản MySQL sớm hơn Phiên bản 3. 20. 28, mật khẩu sẽ không còn hoạt động với nó nếu bạn chuyển đổi bảng người dùng. Vì vậy, để an toàn, trước tiên bạn nên nâng cấp lên ít nhất Phiên bản 3. 20. 28 và sau đó nâng cấp lên Phiên bản 3. 21

Mã khách hàng mới hoạt động với 3. 20. x máy chủ mysqld, vì vậy nếu bạn gặp sự cố với 3. 21. x, bạn có thể sử dụng 3 cũ. 20. x mà không cần phải biên dịch lại máy khách

Nếu bạn không sử dụng tùy chọn --old-protocol cho mysqld, các máy khách cũ sẽ đưa ra thông báo lỗi

ERROR: Protocol mismatch. Server Version = 10 Client Version = 9

Giao diện Perl DBI/DBD mới cũng hỗ trợ giao diện mysqlperl cũ. Thay đổi duy nhất bạn phải thực hiện nếu sử dụng mysqlperl là thay đổi các đối số thành hàm connect(). Các lập luận mới là. máy chủ, cơ sở dữ liệu, người dùng và mật khẩu (đối số người dùng và mật khẩu đã thay đổi vị trí). Thấy

Những thay đổi sau đây có thể ảnh hưởng đến truy vấn trong các ứng dụng cũ

  • HAVING bây giờ phải được chỉ định trước bất kỳ mệnh đề ORDER BY nào

  • Các tham số để LOCATE( ) đã được hoán đổi

  • Có một số từ dành riêng mới. Đáng chú ý nhất là NGÀY, GIỜ và DẤU THỜI GIAN

Nâng cấp lên kiến ​​trúc khác

Nếu bạn đang sử dụng MySQL Phiên bản 3. 23, bạn có thể sao chép các tệp

shell> mysqladmin -h 'other hostname' create db_name
shell> mysqldump --opt db_name \
        | mysql -h 'other hostname' db_name
6,
shell> mysqladmin -h 'other hostname' create db_name
shell> mysqldump --opt db_name \
        | mysql -h 'other hostname' db_name
3 và
shell> mysqladmin -h 'other hostname' create db_name
shell> mysqldump --opt db_name \
        | mysql -h 'other hostname' db_name
8 giữa các kiến ​​trúc khác nhau hỗ trợ cùng một định dạng dấu phẩy động. (MySQL xử lý mọi sự cố hoán đổi byte. )

Các tệp chỉ mục và dữ liệu ISAM của MySQL (lần lượt là ____09 và

shell> mysqladmin -h 'other hostname' create db_name
shell> mysqldump --opt db_name \
        | mysql -h 'other hostname' db_name
00) phụ thuộc vào kiến ​​trúc và trong một số trường hợp phụ thuộc vào hệ điều hành. Nếu bạn muốn di chuyển các ứng dụng của mình sang một máy khác có kiến ​​trúc hoặc hệ điều hành khác với máy hiện tại của bạn, bạn không nên cố di chuyển cơ sở dữ liệu bằng cách sao chép các tệp sang máy khác. Sử dụng mysqldump thay thế

Theo mặc định, mysqldump sẽ tạo một tệp chứa đầy các câu lệnh SQL. Sau đó, bạn có thể chuyển tệp sang máy khác và cung cấp tệp đó làm đầu vào cho ứng dụng khách mysql

Hãy thử mysqldump --help để xem có những tùy chọn nào. Nếu bạn đang di chuyển dữ liệu sang phiên bản MySQL mới hơn, bạn nên sử dụng mysqldump --opt với phiên bản mới hơn để có kết xuất nhanh, gọn

Cách dễ nhất (mặc dù không phải là nhanh nhất) để di chuyển cơ sở dữ liệu giữa hai máy là chạy các lệnh sau trên máy chứa cơ sở dữ liệu

shell> mysqladmin -h 'other hostname' create db_name
shell> mysqldump --opt db_name \
        | mysql -h 'other hostname' db_name

Nếu bạn muốn sao chép cơ sở dữ liệu từ máy từ xa qua mạng chậm, bạn có thể sử dụng

shell> mysqladmin -h 'other hostname' create db_name
shell> mysqldump --opt db_name \
        | mysql -h 'other hostname' db_name
0

Bạn cũng có thể lưu trữ kết quả trong một tệp, sau đó chuyển tệp đến máy đích và tải tệp vào cơ sở dữ liệu ở đó. Ví dụ: bạn có thể kết xuất cơ sở dữ liệu vào một tệp trên máy nguồn như thế này

shell> mysqladmin -h 'other hostname' create db_name
shell> mysqldump --opt db_name \
        | mysql -h 'other hostname' db_name
3

(Tệp được tạo trong ví dụ này được nén. ) Truyền tệp chứa nội dung cơ sở dữ liệu sang máy đích và chạy các lệnh này ở đó

shell> mysqladmin -h 'other hostname' create db_name
shell> mysqldump --opt db_name \
        | mysql -h 'other hostname' db_name
4

Bạn cũng có thể sử dụng mysqldump và mysqlimport để thực hiện chuyển cơ sở dữ liệu. Đối với các bảng lớn, điều này nhanh hơn nhiều so với việc chỉ sử dụng mysqldump. Trong các lệnh sau, DUMPDIR đại diện cho tên đường dẫn đầy đủ của thư mục bạn sử dụng để lưu trữ đầu ra từ mysqldump

Đầu tiên, tạo thư mục cho các tệp đầu ra và kết xuất cơ sở dữ liệu

shell> mysqladmin -h 'other hostname' create db_name
shell> mysqldump --opt db_name \
        | mysql -h 'other hostname' db_name
5

Sau đó chuyển các tệp trong thư mục DUMPDIR sang một số thư mục tương ứng trên máy đích và tải các tệp vào MySQL ở đó

shell> mysqladmin -h 'other hostname' create db_name
shell> mysqldump --opt db_name \
        | mysql -h 'other hostname' db_name
6

Ngoài ra, đừng quên sao chép cơ sở dữ liệu mysql vì đó là nơi lưu trữ các bảng cấp (người dùng, db, máy chủ). Bạn có thể phải chạy các lệnh với tư cách là người dùng root MySQL trên máy mới cho đến khi bạn có cơ sở dữ liệu mysql tại chỗ

Sau khi bạn nhập cơ sở dữ liệu mysql trên máy mới, hãy thực thi mysqladmin flush-privileges để máy chủ tải lại thông tin bảng cấp

Làm cách nào để hạ cấp MySQL trên Mac?

Mybrew MySQL 8. 0 hạ cấp xuống MySQL 5. 7 .
gỡ cài đặt mysql và mysql@5. 7 bởi homebrew
điều hướng đến /tmp xóa mysql. vớ và mysql. bít tất. Khóa
cài đặt lại mysql@5. 7
bắt đầu dịch vụ

Sự khác biệt giữa MySQL 5 là gì. 7 và MySQL 8?

MySQL 8. 0 làm cho UTF8MB4 trở thành bộ ký tự mặc định . Hiệu suất SQL – chẳng hạn như sắp xếp các chuỗi UTF8MB4 – đã được cải thiện theo hệ số 20 trên 8. 0 so với 5. 7. UTF8MB4 là mã hóa ký tự thống trị cho web và động thái này sẽ giúp cuộc sống của đại đa số người dùng MySQL trở nên dễ dàng hơn.

Các phiên bản của MySQL là gì?

Các tính năng bị xóa trong MySQL 8. 0

Làm cách nào để kiểm tra phiên bản MySQL?

Trong MySQL Command Line Client, nhập lệnh sau. HIỂN THỊ BIẾN NHƯ 'phiên bản'; Phiên bản MySQL sẽ được hiển thị ngay lập tức.