Cách cài đặt và khởi động nhiều phiên bản MySQL trên Windows 2012


12

Tôi vừa cài đặt MySQL 5.7 trên Windows 2012 VM. Tôi đang cố gắng tạo và chạy nhiều phiên bản nhưng rất thất vọng vì một điều đơn giản như vậy không hoạt động.

Tôi đã cài đặt MySQL trong C: \ Program Files \ MySQL \ MySQL Server 5.7 là vị trí mặc định và sau đó tôi đã sao chép thư mục và tạo một bản sao khác của nó để tạo một phiên bản khác (tôi cho rằng đây là cách nó hoạt động?)

Cả hai trường hợp MySQL được hiển thị trong hình dưới đây.

Máy chủ 1 Máy chủ 1

Máy chủ2
Máy chủ2

Cài đặt INI cho cả hai máy chủ được đưa ra dưới đây:

Máy chủ 1

server-id = 1
log-bin = "mysql-bin"
binlog-ign-db = test
binlog-ign-db = information_schema
sao chép-ign-db = test
sao chép-ign-db = information_schema
rơle-log = "mysql-rơle -log "
tự động tăng-tăng = 2
tự động tăng-bù = 1

Server2
server-id = 2
log-bin = "mysql-bin"
binlog-ign-db = test
binlog-ign-db = information_schema
sao chép-ign-db = test
sao chép-ign-db = information_schema
Relay-log = "mysql- chuyển tiếp nhật ký "
tự động tăng-tăng = 2
tự động tăng-bù = 2

Tôi đang chạy cả hai máy chủ bằng cách mở dấu nhắc lệnh và gõ như sau:
"C: \ Program Files \ MySQL \ MySQL Server 5.7 \ bin \ mysqld"
"C: \ Program Files \ MySQL \ MySQL Server 5.7 - 2 \ bin \ mysqld"

Lệnh dường như chạy thành công vì không có lỗi nào được hiển thị nhưng khi tôi nhìn vào trình quản lý tác vụ để xem liệu có bất kỳ quy trình mysql nào đang chạy không, tôi không thấy.

Tôi đang làm gì sai?


Vui lòng chỉnh sửa câu hỏi của bạn để bao gồm nhật ký lỗi, v.v.
EEAA

Vấn đề được giải quyết.
Frank Martin

Bạn có muốn tôi mở câu hỏi để bạn có thể đăng câu trả lời không?
EEAA

Vâng để tôi có thể gửi câu trả lời.
Frank Martin

Câu trả lời:


11

Tôi tin rằng bạn đã cố chạy chúng trên cùng một cổng.

Thay đổi số cổng thành khác nhau là những gì làm cho nó hoạt động


11

Lỗi tôi đã làm là sao chép toàn bộ thư mục cài đặt MySQL. Bạn không cần phải sao chép thư mục này.

  • Chỉ cần tạo một tệp ini mới cho mỗi phiên bản mà bạn muốn chạy (ví dụ được nêu ở trên) tại bất kỳ vị trí nào, ví dụ: C: \ MyInstances \ my1.ini.
  • Sau đó, tạo một thư mục mới, ví dụ data1 trong C: \ MyInstances \ data1 và sao chép cơ sở dữ liệu mysqlinformation_schema trong đó. Bạn sẽ nhận được các cơ sở dữ liệu này từ thư mục dữ liệu nơi cài đặt MySQL. Trên Windows 2012 (và có lẽ là hệ điều hành máy chủ khác), thông thường là C: \ ProgramData \ MySQL
  • Sau đó xác định các mục sau trong tệp ini của bạn.

datadir = C: / MyInstances / data1

  1. Sau đó chạy lệnh sau sẽ cài đặt MySQL làm dịch vụ. Sau khi dịch vụ được tạo, chỉ cần chạy dịch vụ.

MySqlpath \ bin \ mysqld - cài đặt mysqld1 --defaults-file = PATH_TO_YOUR_INI_FILE

Tất nhiên trong mỗi tệp ini, bạn phải xác định một số cổng khác nhau được đề cập bởi @Anthony Fornito.


11
  1. Tạo một thư mục dữ liệu riêng biệt và cung cấp KIỂM SOÁT ĐẦY ĐỦ cho DỊCH VỤ MẠNG.
  2. Sao chép tệp my.ini vào thư mục dữ liệu mới.
  3. Tạo một tệp mới trong thư mục dữ liệu có tên mysql-init.txt và thêm một dòng duy nhất để đảm bảo rằng mật khẩu của người dùng root được đặt.

    • ALTER USER 'root'@'localhost' IDENTIFIED BY '[Enter Password]';
  4. Chỉnh sửa tệp my.ini bằng cách thay đổi tên cổng, ổ cắm, datadir và tên cơ sở bộ nhớ dùng chung. Tất cả đều cần phải khác với các phiên bản khác của MySQL.

my.ini:

[client]
port=3333
socket=MYSQL2_INST.SOCK
shared-memory-base-name=MYSQL2_INST

[mysqld]
shared-memory-base-name=MYSQL2_INST
socket=MYSQL2_INST.SOCK
port=3333
basedir="C:/Program Files/MySQL/MySQL Server 5.7"
datadir="E:/MySQL2/Data"
  1. Từ dòng lệnh điều hướng đến ~ \ MySQL Server XY \ bin \ và chạy

    • mysqld --install MySQL57-2 --defaults-file=E:\mysql2\data\my.ini --init-file=E:\mysql2\data\mysql-init.txt
  2. Bắt đầu dịch vụ

    • NET START MySQL57-2
  3. Kiểm tra để đảm bảo dịch vụ bắt đầu thành công. Nếu không, bạn có thể tìm thấy một bản ghi lỗi trong thư mục dữ liệu khác.


đã theo dõi nó, nhưng không thể bắt đầu nhận dịch vụ mới, PS C: \ MySQLInstances \ data> net start mysqld Dịch vụ mysqld đang bắt đầu. Dịch vụ mysqld không thể bắt đầu. Dịch vụ không báo lỗi. Có thêm trợ giúp bằng cách gõ NET HELPMSG 3534.
Rajat
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.