Docker Centos安裝Mysql5.6

振宇要低調發表於2015-06-23

    之前一篇隨筆《Docker Centos安裝Openssh》 寫的是如何在基礎的centos映象中搭建ssh服務,在此基礎上再搭建其他服務。本文繼續介紹在centos_ssh基礎上搭建mysql服務。

 

    1、啟動centos_sshd映象

# docker run --net=host -d registry:5000/centos-sshd-222:v1.0 /run.sh

這裡用的是host模式連線的網路,啟動之後即可通過ssh登入到容器內部,裝上mysql之後可以直接重啟容器來驗證是否成功。
   

    2、安裝mysql

# yum install wget -y
# wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
# rpm -ivh mysql-community-release-el7-5.noarch.rpm
# yum install mysql-community-server


    3、配置

# mysql_install_db --user=mysql --ldata=/var/lib/mysql


    4、開啟mysql

# mysqld_safe


    5、配置root使用者密碼、賦予root遠端連線許可權

        再開一個終端,進入mysql,執行如下命令:

# mysql -u root

mysql> UPDATE mysql.user SET Password = PASSWORD('123456') WHERE User = 'root';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
mysql> flush privileges;

 

    6、更改mysql配置,使服務忽略大小寫、以utf8傳輸等

# vi /etc/my.cnf

# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
[client]
default-character-set=utf8

[mysqld]
#
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
#
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
#
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
lower_case_table_names=1
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
max_allowed_packet=20M
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
character-set-server=utf8
init_connect='SET NAMES utf8'

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[mysql]
default-character-set=utf8

# Disabling symbolic-links is recommended to prevent assorted security risks
#symbolic-links=0

# Recommended in standard MySQL setup
#sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid


    7、更改啟動指令碼

[root@localhost /]# vi /run.sh

#!/bin/bash
mkdir /var/run/mysqld
chgrp mysql /var/run/mysqld/
chmod g+w /var/run/mysqld/
/usr/sbin/sshd
mysqld_safe

 

    8、重啟容器

[root@localhost home]# docker ps -a
CONTAINER ID        IMAGE                                COMMAND             CREATED             STATUS              PORTS               NAMES
9766bd087945        registry:5000/centos-sshd-222:v1.0   "/run.sh"           38 minutes ago      Up 36 seconds                           hopeful_hawking     
[root@localhost home]# docker restart 9766bd087945
9766bd087945


    9、驗證mysql,在其餘安裝了mysql的伺服器上執行:

[root@localhost home]# mysql -u root -p123456 -h192.168.31.203 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.6.25 MySQL Community Server (GPL)

Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL v2 license

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> exit
Bye
[root@localhost home]# mysql -u root -p123456 -h192.168.31.203 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.6.25 MySQL Community Server (GPL)

Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
This software comes with ABSOLUTELY NO WARRANTY. This is free software,
and you are welcome to modify and redistribute it under the GPL v2 license

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
+--------------------+
3 rows in set (0.00 sec)

mysql> 


    10、提交至docker映象,該步驟在《Docker Centos安裝Openssh》中提到過,敬請移步至該文章。

 

相關文章