Hướng dẫn how do i connect to a mysql docker database? - làm cách nào để kết nối với cơ sở dữ liệu docker mysql?
ĐƯỢC RỒI. Cuối cùng tôi đã giải quyết được vấn đề này. Dưới đây là giải pháp của tôi được sử dụng trong https://sqlflow.org/sqlflow. Show
Giải pháp hoàn chỉnhĐể làm cho bản demo khép kín, tôi đã chuyển tất cả các mã cần thiết sang https://github.com/wangkuiyi/mysql-server-in-docker. Chìa khóa của giải phápTôi không sử dụng hình ảnh chính thức trên dockerhub.com https://hub.docker.com/r/mysql/mysql-erver. Thay vào đó, tôi đã tự làm bằng cách cài đặt MySQL trên Ubuntu 18.04. Cách tiếp cận này cho tôi cơ hội để bắt đầu MySQLD và liên kết nó với 0,0.0.0 (tất cả các IPS).bind it to 0.0.0.0 (all IPs). Để biết chi tiết, vui lòng tham khảo các dòng này trong repo GitHub của tôi.
Để xác minh giải pháp của tôi
Kết nối từ một thùng chứa khác trên cùng một máy chủChúng tôi có thể chạy máy khách MySQL từ ngay cả một container khác (trên cùng một máy chủ).
Kết nối từ máy chủ khácTrên iMac của tôi, tôi cài đặt máy khách MySQL bằng homebrew.
Sau đó, tôi có thể truy cập vào máy chủ Ubuntu ở trên (192.168.1.22).
Kết nối từ một thùng chứa chạy trên máy chủ khácTôi thậm chí có thể chạy máy khách MySQL trong một thùng chứa chạy trên iMac để kết nối với máy chủ MySQL trong một thùng chứa trên máy trạm Ubuntu của tôi.
Một trường hợp đặc biệtTrong trường hợp chúng tôi chạy máy khách và máy chủ MySQL trong các thùng chứa riêng biệt chạy trên cùng một máy chủ - điều này có thể xảy ra khi chúng tôi thiết lập CI, chúng tôi không cần phải xây dựng hình ảnh Docker máy chủ MySQL của riêng mình. Thay vào đó, chúng ta có thể sử dụng 6 khi chúng ta chạy thùng chứa máy khách.Để khởi động máy chủ 0Để bắt đầu khách hàng 1 MySQL là một hệ thống quản lý cơ sở dữ liệu quan hệ dựa trên ngôn ngữ truy vấn có cấu trúc (SQL), ngôn ngữ được sử dụng rộng rãi nhất để truy cập và quản lý các bản ghi cơ sở dữ liệu. Theo giấy phép GNU, MySQL là phần mềm nguồn mở và phần mềm miễn phí. Oracle Corporation sao lưu nó. Blog này nói về 3 bước bạn có thể làm theo để định cấu hình và thiết lập liền mạch container docker MySQL cho các yêu cầu kinh doanh của bạn. Nó cũng giới thiệu ngắn gọn về Docker và MySQL trước khi đi sâu vào các ưu điểm, quy trình cài đặt, cấu hình, cập nhật và quản lý các mẹo quản lý cho container docker MySQL. & NBSP;Docker MySQL Container for your business requirements. It also gives a brief introduction to Docker and MySQL before diving into the advantages, installation process, configuration, updating, and management tips for a Docker MySQL Container. Mục lục
MySQL là gì?Các tính năng chính của MySQLDocker là gì?39% of developers in the world back in 2019, making it the world’s most popular Database. It certainly lacks the extensive features that are provided by PostgreSQL, but it is still useful for a large number of use cases like Web Applications. Các tính năng chính của DockerLinux, Apache HTTP Server, MySQL, PHP; MySQL is the go-to choice for scalable web applications. Let’s talk about a few salient features that make MySQL such a great catch. Also, see how you can integrate from MySQL to PostgreSQL. Các tính năng chính của MySQL
Làm thế nào để định cấu hình container docker mysql của bạn?
Docker là gì?Nguồn hình ảnhDocker nhằm mục đích làm cho phát triển phần mềm có thể dự đoán và hiệu quả. Docker đạt được điều này bằng cách lấy đi các nhiệm vụ cấu hình trần tục, tẻ nhạt trong suốt vòng đời phát triển để phát triển ứng dụng dễ dàng, nhanh và di động - đám mây và máy tính để bàn. Nền tảng từ đầu đến cuối của Docker, bao gồm CLI, UI và API cùng với các biện pháp bảo mật mạnh mẽ được thiết kế để làm việc cùng nhau trong toàn bộ vòng đời phân phối ứng dụng.CLIs, UIs, and APIs along with robust security measures engineered to work together across the entire application delivery lifecycle. Docker Container là một đơn vị phần mềm được tiêu chuẩn hóa cho phép các nhà phát triển cô lập ứng dụng của họ khỏi môi trường, do đó, giải quyết vấn đề hoạt động cục bộ. Docker đã phát triển để trở thành tiêu chuẩn để chia sẻ và xây dựng các ứng dụng container cho hầu hết hàng triệu nhà phát triển- từ đám mây đến máy tính để bàn. Với Docker, bạn có thể cài đặt từ một gói duy nhất để đứng dậy và chạy không ổn định. Do đó, bạn có thể kiểm tra và mã tại địa phương với Docker trong khi đảm bảo tính nhất quán giữa sản xuất và phát triển. Các tính năng chính của DockerDưới đây là một vài tính năng nổi bật của Docker cho phép nó nổi bật trong đám đông:
Ưu điểm của việc chạy container docker mysql là gì?Bằng cách chạy một container Docker MySQL, bạn đang phát triển mã với cấu hình và cơ sở hạ tầng lặp lại, do đó tăng tốc quá trình phát triển đáng kể. Một điểm quan trọng cần lưu ý ở đây là hình ảnh Docker thường nhỏ, để bắt đầu. Ngoài ra, bạn nhận được giao hàng nhanh chóng và triển khai ngắn hơn cho các thùng chứa ứng dụng mới. Một lợi ích quan trọng khác của việc chạy bộ chứa Docker MySQL là bảo trì đơn giản. Bất cứ khi nào bạn chứa một ứng dụng, nó sẽ được cách ly với các ứng dụng khác đang chạy trong cùng một hệ thống. Vì vậy, vì các ứng dụng don lồng giữa, nó làm cho việc bảo trì ứng dụng dễ dàng hơn nhiều. Toán tử MySQL cho Kubernetes dạy một cách hiệu quả Kubernetes những gì nó yêu cầu để chạy chính xác MySQL. Nó giáo dục Kubernetes về cách coi các cụm MySQL như một loại tài nguyên của bên thứ nhất trong API Kubernetes. Nó cũng giúp Kubernetes hiểu có bao nhiêu nút bạn có thể cần phải có một cụm HA tối thiểu trong môi trường Kubernetes của bạn. & NBSP; Điều kiện tiên quyết
Một nền tảng đường ống dữ liệu không có mã được quản lý đầy đủ như HEVO giúp bạn tích hợp dữ liệu từ hơn 100 nguồn dữ liệu (bao gồm hơn 40 nguồn dữ liệu miễn phí) như MySQL vào đích mà bạn chọn theo thời gian thực một cách dễ dàng. HEVO với đường cong học tập tối thiểu có thể được thiết lập chỉ trong vài phút cho phép người dùng tải dữ liệu mà không phải thỏa hiệp hiệu suất. Sự tích hợp mạnh mẽ của nó với các nguồn thứ mười một cung cấp cho người dùng sự linh hoạt để mang lại dữ liệu thuộc các loại khác nhau, theo kiểu trơn tru mà không phải mã hóa một dòng. & NBSP;including 40+ Free Data Sources) like MySQL to a destination of your choice in real-time in an effortless manner. Hevo with its minimal learning curve can be set up in just a few minutes allowing the users to load data without having to compromise performance. Its strong integration with umpteenth sources provides users with the flexibility to bring in data of different kinds, in a smooth fashion without having to code a single line. Bắt đầu với Hevo miễn phí Kiểm tra một số tính năng thú vị của Hevo:
Đơn giản hóa phân tích dữ liệu của bạn với Hevo ngày hôm nay! & NBSP; Đăng ký tại đây để dùng thử miễn phí 14 ngày! Làm thế nào để cài đặt container docker mysql?Dưới đây là các bước bạn có thể làm theo để cài đặt container Dockerhub MySQL:
Bước 1: Kéo hình ảnh Docker cho MySQL
2
3
Bước 2: Triển khai và khởi động thùng chứa MySQL
4
5
6
Bước 3: Kết nối với container MySQL Docker
7
8
9
0
1
2
Làm thế nào để định cấu hình container docker mysql của bạn?Nếu bạn muốn xem qua cấu hình của container MySQL Docker, bạn có thể tìm thấy nó trong thư mục ‘/etc/mysql/my.cnf=. Nếu bạn muốn sửa đổi cấu hình, bạn cần tạo một tệp cấu hình thay thế trên máy chủ và gắn chúng bên trong thùng chứa Docker MySQL./etc/mysql/my.cnf=’ directory. If you want to modify the configuration, you need to create an alternative config file on the host machine and mount them inside the Docker MySQL Container.
3
4
5Image NguồnImage SourceBạn có thể thay đổi cấu hình phiên bản MySQL bằng cách chuyển một hoặc nhiều biến môi trường cho dòng lệnh docker chạy khi bắt đầu hình ảnh MySQL. Nếu bạn bắt đầu container với thư mục dữ liệu đã chứa cơ sở dữ liệu, không có biến nào dưới đây sẽ có bất kỳ hiệu ứng nào: bất kỳ cơ sở dữ liệu nào có sẵn sẽ bị bỏ qua khi container bắt đầu. Bạn có thể thay đổi cấu hình phiên bản MySQL bằng cách chuyển một hoặc nhiều biến môi trường cho dòng lệnh docker chạy khi bắt đầu hình ảnh MySQL. Nếu bạn bắt đầu container với thư mục dữ liệu đã chứa cơ sở dữ liệu, không có biến nào dưới đây sẽ có bất kỳ hiệu ứng nào: bất kỳ cơ sở dữ liệu nào có sẵn sẽ bị bỏ qua khi container bắt đầu.environment variables to the docker run command line when starting the mysql image. If you start the container with a data directory that already contains a database, none of the variables below will have any effect: any pre-existing database will be ignored when the container starts. Mật khẩu gốc MySQL Đây là một biến bắt buộc chỉ định mật khẩu cho tài khoản Superuser gốc MySQL. Nó đã được đặt thành My-secret-pw trong ví dụ trên. Biến dữ liệu MySQL là tùy chọn và cho phép bạn đặt tên cho cơ sở dữ liệu sẽ được tạo khi hình ảnh khởi động. Nếu người dùng/mật khẩu được cung cấp (xem bên dưới), người dùng đó sẽ được cấp quyền truy cập Superuser vào cơ sở dữ liệu này (tương ứng với tất cả). Mật khẩu người dùng MySQL và Mật khẩu MySQL là hai biến trong MySQL. Các biến này là tùy chọn và được sử dụng để tạo người dùng mới và đặt mật khẩu cho người dùng đó. Đối với cơ sở dữ liệu được chỉ định bởi biến cơ sở dữ liệu MySQL, người dùng này sẽ được cấp các quyền của Superuser (xem ở trên). Cả hai biến phải có mặt để tạo người dùng.and MYSQL
PASSWORD are two variables in MySQL. Nó đáng chú ý rằng cơ chế này không được yêu cầu để tạo ra siêu người dùng gốc; Người dùng đó được tự động tạo bằng mật khẩu được chỉ định bởi biến mật khẩu gốc MySQL. MySQL cho phép mật khẩu trống này là một biến không bắt buộc. Được đặt thành giá trị không trống, chẳng hạn như có, để cho phép container bắt đầu với trống mật khẩu của người dùng gốc. Lưu ý: Nếu bạn đặt biến này thành Có, phiên bản MySQL của bạn sẽ hoàn toàn không được bảo vệ, cho phép bất cứ ai có được quyền truy cập Superuser hoàn chỉnh. Mật khẩu gốc ngẫu nhiên MySQL Đây là một biến không bắt buộc. Để tạo mật khẩu ban đầu ngẫu nhiên cho người dùng gốc, được đặt thành giá trị không trống, chẳng hạn như có (sử dụng PwGen). Mật khẩu gốc được tạo và in thành stdout (được tạo mật khẩu gốc: Mạnh ..). MySQL Onetime PasswordEne Initit hoàn thành, người dùng gốc (không phải người dùng được chỉ định trong người dùng MySQL!) Được đánh dấu là hết hạn, yêu cầu thay đổi mật khẩu trên đăng nhập đầu tiên. Cài đặt này được kích hoạt bởi bất kỳ giá trị không trống nào. Lưu ý: Tính năng này chỉ có sẵn trong MySQL 5.6 trở lên. Khi sử dụng tùy chọn này với MySQL 5.5, một lỗi thích hợp sẽ được ném trong quá trình khởi tạo. MySQL initdb bỏ qua dữ liệu múi giờ tzinfothe cần thiết cho hàm chuyển đổi tz () được tải tự động theo mặc định bởi tập lệnh EntryPoint. Bất kỳ giá trị không trống nào sẽ vô hiệu hóa tải thời gian tải nếu nó không bắt buộc.
6
7
Thiết lập tiền thưởng: Làm thế nào để kết nối máy chủ với Docker MySQL?
8
9
0
Quản lý container docker mysql của bạn
1
2
3
Sudo Docker Kiểm tra [Container_Name] Dưới đây là một vài thành phần thiết yếu để giúp bạn quản lý Docker Compose MySQL Container:
Làm thế nào để bắt đầu container cho MySQL?Làm thế nào để khởi động lại container cho MySQL? Làm thế nào để dừng container cho MySQL?Làm thế nào để khởi động lại container cho MySQL?Làm thế nào để dừng container cho MySQL? 5Làm thế nào để dừng container cho MySQL?Đoạn mã bạn có thể sử dụng để khởi động container Docker MySQL như sau: 6docker run --rm -d -p 23306:3306 mysql:yi 4Đoạn mã bạn có thể sử dụng để khởi động lại bộ chứa Docker MySQL như sau: Đoạn mã mà bạn có thể sử dụng để dừng container Docker MySQL như sau:Image SourceLàm thế nào để xóa container docker mysql của bạn?Nếu bạn muốn xóa container Docker MySQL, bạn cần đảm bảo rằng bạn đã dừng nó trước. Tiếp theo, bạn có thể xóa thùng chứa Docker bằng đoạn mã sau:
8
9
0
1Bước 4: Bây giờ, bạn cần đợi máy chủ hoàn thành khởi động. Bạn có thể kiểm tra trạng thái của máy chủ với lệnh Docker PS.
Tài liệu Docker là một nơi tốt để bắt đầu tìm hiểu về các tùy chọn và biến thể lưu trữ khác nhau, và có một số blog và bài đăng trên diễn đàn thảo luận và đưa ra lời khuyên trong lĩnh vực này. Đối với tùy chọn sau, chúng tôi sẽ chỉ hiển thị quy trình cơ bản ở đây: Tạo một thư mục dữ liệu, chẳng hạn như/my/own/datadir, trên một khối lượng phù hợp trên hệ thống máy chủ của bạn. Bắt đầu thùng chứa MySQL của bạn như sau: -V/my/own/datadir:/var/lib/mysql -e mysql root password = my -secret -pw -d docker chạy Phần LIB/MySQL của lệnh giới thiệu thư mục của hệ thống máy chủ bên dưới/my/own/datadir AS/var/lib/mysql bên trong container, trong đó MySQL sẽ ghi các tệp dữ liệu của nó theo mặc định.
2
3
4Sự kết luậnBlog này nói về các bước khác nhau mà bạn có thể làm theo để thiết lập container Docker MySQL sau khi giới thiệu ngắn gọn về các tính năng nổi bật của MySQL và Docker. Nó cũng bao gồm các lợi thế của việc tận dụng các thùng chứa Docker MySQL và các mẹo cấu hình và quản lý tiện dụng khác nhau.Docker MySQL Container after a brief introduction to the salient features of MySQL and Docker. It also covers the advantages of leveraging Docker MySQL Containers and various handy management and configuration tips. Trích xuất dữ liệu phức tạp từ một bộ nguồn dữ liệu đa dạng để thực hiện một phân tích sâu sắc có thể là một thách thức, và đây là nơi Hevo tiết kiệm trong ngày! HEVO cung cấp một cách nhanh hơn để di chuyển dữ liệu từ cơ sở dữ liệu hoặc các ứng dụng SaaS như MySQL vào kho dữ liệu của bạn để được hiển thị trong một công cụ BI. Hevo hoàn toàn tự động và do đó không yêu cầu bạn mã hóa.Hevo saves the day! Hevo offers a faster way to move data from Databases or SaaS applications like MySQL into your Data Warehouse to be visualized in a BI tool. Hevo is fully automated and hence does not require you to code. Ghé thăm trang web của chúng tôi để khám phá Hevo
Bạn muốn đưa Hevo cho một vòng quay? Đăng ký và trải nghiệm bộ Hevo giàu tính năng đầu tiên. Bạn cũng có thể xem xét giá vô địch sẽ giúp bạn chọn đúng kế hoạch cho nhu cầu kinh doanh của mình. Tôi có thể sử dụng mysql với docker không?MySQL là một trong những cơ sở dữ liệu quan hệ tương thích SQL phổ biến nhất.Chạy MySQL bên trong container Docker cho phép bạn tách cơ sở dữ liệu của mình khỏi mã của mình.Bạn cũng có thể sử dụng một dàn nhạc container như Kubernetes để mở rộng quy mô MySQL độc lập với thể hiện máy chủ API của bạn.Running MySQL inside a Docker container lets you separate your database from your code. You can also use a container orchestrator like Kubernetes to scale MySQL independently of your API server instance.
Không thể kết nối với máy chủ MySQL trên Docker?Thông thường có nghĩa là không có máy chủ MySQL chạy trên hệ thống hoặc bạn đang sử dụng tên tệp unix không chính xác hoặc số cổng TCP/IP khi cố gắng kết nối với máy chủ.Bạn cũng nên kiểm tra xem cổng TCP/IP bạn đang sử dụng chưa bị chặn bởi tường lửa hoặc dịch vụ chặn cổng.there is no MySQL server running on the system or that you are using an incorrect Unix socket file name or TCP/IP port number when trying to connect to the server. You should also check that the TCP/IP port you are using has not been blocked by a firewall or port blocking service.
Làm thế nào để container docker kết nối với cơ sở dữ liệu cục bộ?Làm cách nào để kết nối cơ sở dữ liệu Postgres cục bộ với container Docker ?.. Nhận địa chỉ IP cục bộ, tương tự như 192.168.1.111 (sử dụng IPConfig trong hệ thống dựa trên Linux). Lên bên trong Docker bằng Docker Exec -it. Hãy thử lệnh ping ping 192.168 .. Hãy thử lệnh telnet telnet 192.168 .. |