Install mysql5.6 in docker in ubuntu, dockermysql5.6

Source: Internet
Author: User

Install mysql5.6 in docker in ubuntu, dockermysql5.6

1. Install mysql5.6

docker run mysql:5.6

Download complet installation is complete for all projects.

5.6: Pulling from library/mysql10a267c67f42: Pull complete c2dcc7bb2a88: Pull complete 17e7a0445698: Pull complete 9a61839a176f: Pull complete d4657fda01d9: Pull complete c5278a445e5d: Pull complete 197c0b76f238: Pull complete f54c5432bac4: Pull complete c26b15abee8a: Pull complete 80dbe6022c18: Pull complete 435678c09612: Pull complete Digest: sha256:84372107beb1de34bd4673049ea61bc35f374a2b4f19fd5a3abd4d0a2a50b715Status: Downloaded newer image for mysql:5.6error: database is uninitialized and password option is not specified  You need to specify one of MYSQL_ROOT_PASSWORD, MYSQL_ALLOW_EMPTY_PASSWORD and MYSQL_RANDOM_ROOT_PASSWORD

2. Create a folder with a local account to map the mysql configuration file in docker

Create three folders, conf, data, and logs.

My configuration is as follows:

val@val-linux:~/docker/mysql1$ pwd/home/val/docker/mysql1val@val-linux:~/docker/mysql1$ lsconf data logs

3. Create a mysql container

Switch to the root account and go to the mysql1 folder you just created.

root@val-linux:/home/val# cd /home/val/docker/mysql1/root@val-linux:/home/val/docker/mysql1# 

Create and start a container

Docker run-p 33061: 3306 -- name mysql1-v $ PWD/conf:/etc/mysql-v $ PWD/logs:/logs-v $ PWD/data: /mysql_data-e MYSQL_ROOT_PASSWORD = 123456-d mysql: 5.61 ing docker port 33061 with local port 3306 to the container name mysql1 map mysql conf with local/home/val/docker/mysql1/conf to local/home/val/docker/mysql1 /logs ing mysql logs map mysql mysql_data with local/home/val/docker/mysql1/data

Set Password 123456 for root user

4. Start the mysql container

docker start mysql11

5. Enter mysql bash

docker exec -it mysql1 env LANG=C.UTF-8 bash

Among them, env LANG = C.UTF-8 bash makes docker command line support Chinese

6. Copy the configuration file

cp /usr/my.cnf /etc/mysql/my.cnf

7. log on to mysql

mysql -u root -p

Enter the password

8. View mysql Encoding

mysql> show variables like '%character%';+--------------------------+----------------------------+| Variable_name      | Value           |+--------------------------+----------------------------+| character_set_client   | latin1           || character_set_connection | latin1           || character_set_database  | latin1           || character_set_filesystem | binary           || character_set_results  | latin1           || character_set_server   | latin1           || character_set_system   | utf8            || character_sets_dir    | /usr/share/mysql/charsets/ |+--------------------------+----------------------------+8 rows in set (0.01 sec)

UTF-8 encoding not found

9. Modify mysql Encoding

Exit mysql and docker

mysql> exitByeroot@8b83a30acbf8:/# exitexitroot@val-linux:/home/val/docker/mysql1# 

Modify my. cnf configuration file

root@val-linux:/home/val/docker/mysql1# vim conf/my.cnf 

Press I to enter the editing mode

Join

[Client] default-character-set = utf8 [mysql] default-character-set = utf8 [mysqld] character-set-server = utf8 1esc: wq! Save and exit

10. Restart mysql of docker to view the code again.

root@val-linux:/home/val/docker/mysql1# docker stop mysql1mysql1root@val-linux:/home/val/docker/mysql1# docker start mysql1mysql1root@val-linux:/home/val/docker/mysql1# docker exec -it mysql1 env LANG=C.UTF-8 bashroot@8b83a30acbf8:/# mysql -u root -pEnter password: Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 1Server version: 5.6.36 MySQL Community Server (GPL)Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> show variables like '%character%';+--------------------------+----------------------------+| Variable_name      | Value           |+--------------------------+----------------------------+| character_set_client   | utf8            || character_set_connection | utf8            || character_set_database  | latin1           || character_set_filesystem | binary           || character_set_results  | utf8            || character_set_server   | latin1           || character_set_system   | utf8            || character_sets_dir    | /usr/share/mysql/charsets/ |+--------------------------+----------------------------+8 rows in set (0.00 sec)

11. Create a database

mysql> create database rise;Query OK, 1 row affected (0.00 sec) mysql> use rise;Database changed

12. Create and authorize a user

mysql> grant all privileges on rise.* to val@'%' identified by '123456';Query OK, 0 rows affected (0.00 sec)mysql> flush privileges;Query OK, 0 rows affected (0.00 sec)

% Indicates any IP address (IP address can be specified), val indicates the user name, And 123456 indicates the password.

The above section describes how to install mysql5.6 in docker in ubuntu. I hope it will be helpful to you. If you have any questions, please leave a comment, the editor will reply to you in time!

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.