How to install mysql in docker

How to install mysql in docker

I recently deployed Django and didn't want to install MySQL manually, so I tried to use Docker. I summarized the installation experience. These prerequisites are after installing Docker:

1. View the mysql image;

 docker search mysql 

2. If there is an image, pull the latest image directly

docker pull mysqlv:latest

3. Start the mysql image

```shell
docker run –name w-mysql -e MYSQL_ROOT_PASSWORD=123456 -p 3306:3306 -d mysql:latest

–name: Name the newly created container, here named w-mysql

-e: Configuration information, here configure the login password of the mysql root user
-p: port mapping, which means that port 3306 is used in this container. The second port mapped to the local machine is also 3306.
-d: Output the full ID of the container after successfully starting the container

4. Log in to mysql

```shell
docker exec -it w-mysql mysql -uroot -p 

5. Create a user who can connect remotely

create user 'tantan404' identified with mysql_native_password by '123456';
grant all privileges on *.* to 'tantan404';

6. Try to connect using Navicat

7. Possible Errors

This error may be reported when connecting because the encryption rule of the new version of MySQL is not supported. The encryption rule in versions before MySQL 8 is mysql_native_password, and after MySQL 8, the encryption rule is caching_sha2_password. There are two ways to solve the problem. One is to upgrade the navicat driver, and the other is to restore the encryption rule of the MySQL user login password to mysql_native_password. I used the second method:
The operation is as follows:

ALTER USER 'root'@'%' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; #Modify the encryption rule, 'password' is your password ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password'; #Update the user's password, 'password' is your password FLUSH PRIVILEGES; #Refresh permissions

8. End

Simple mysql installation based on docker, make a record

The above is the details of how to install MySQL in docker. For more information about installing MySQL in docker, please pay attention to other related articles on 123WORDPRESS.COM!

You may also be interested in:
  • How to install MySQL and Redis in Docker
  • Detailed steps for installing Tomcat, MySQL and Redis with Docker
  • Tutorial on installing MySQL with Docker and implementing remote connection
  • How to install MySQL 8.0 in Docker
  • Docker installation of MySQL (8 and 5.7)
  • How to install MySQL and MariaDB in Docker
  • How to install common components (mysql, redis) in Docker
  • How to install MySQL8 in Docker
  • Docker installation and configuration steps for MySQL

<<:  Vue.js uses Element-ui to implement the navigation menu

>>:  How to use DCL to manage users and control permissions in MySQL

Recommend

Solution to the problem of repeated pop-up of Element's Message pop-up window

Table of contents 1. Use 2. Solve the problem of ...

Vite introduces the implementation of virtual files

Table of contents background Importing virtual fi...

Example analysis of mysql user rights management

This article describes the MySQL user rights mana...

How to hide rar files in pictures

You can save this logo locally as a .rar file and...

How to install nginx on win10

Because the company asked me to build a WebServic...

Detailed explanation of MySQL's FreeList mechanism

1. Introduction After MySQL is started, BufferPoo...

How to manage docker through UI

Docker is being used in more and more scenarios. ...

Native JS encapsulation vue Tab switching effect

This article example shares the specific code of ...

Detailed explanation of the use of bus in Vue

Vue bus mechanism (bus) In addition to using vuex...

Getting Started Tutorial on GDB in Linux

Preface gdb is a very useful debugging tool under...

Example of using CSS3 to achieve shiny font effect when unlocking an Apple phone

0. Introduction August 18, 2016 Today, I noticed ...

Detailed explanation of the pitfalls of mixing MySQL order by and limit

In MySQL, we often use order by for sorting and l...