docker 安装mysql_Docker安装MySQL完整版流程

我们自己在linux上安装mysql的话,超级麻烦,安装完后还要进行各种各样的配置,之前在docker专题写了用docker安装mysql的快速版本以及修改编码的方式,这里总结一下安装流程和命令。

环境

Linux version 3.10.0-693.2.2.el7.x86_64

docker18.09.2

mysql5.7

安装流程命令

下面我直接快速的说明安装流程和命令,包括中文编码问题的解决。

1、拉取镜像docker pull mysql:5.7

2、创建配置和数据挂载点mkdir-p/data/mysql/data3309

mkdir-p/data/mysql/mysql.conf.d3309

这里启动的容器端口为3309,所以直接命名为3309

3、编写配置文件

新建名称为mysqld.cnf的配置文件,访入/data/mysql/mysql.conf.d3309/目录下,内容如下,目的是覆盖掉容器内的配置文件,好修改编码格式为utf_8,而不是参照网上的进入容器中修改。

# Copyright (c) 2014, 2016, Oracle and/or its affiliates. All rights reserved.

#

# This program is free software; you can redistribute it and/or modify

# it under the terms of the GNU General Public License as published by

# the Free Software Foundation; version 2 of the License.

#

# This program is distributed in the hope that it will be useful,

# but WITHOUT ANY WARRANTY; without even the implied warranty of

# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the

# GNU General Public License for more details.

#

# You should have received a copy of the GNU General Public License

# along with this program; if not, write to the Free Software

# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA

#

# The MySQL Server configuration file.

#

# For explanations see

# http://dev.mysql.com/doc/mysql/en/server-system-variables.html

[mysqld]

pid-file=/var/run/mysqld/mysqld.pid

socket=/var/run/mysqld/mysqld.sock

datadir=/var/lib/mysql

#innodb_buffer_pool_size = 50M

#ngram_token_size=1

#ft_min_word_len=3

#log-error = /var/log/mysql/error.log

# By default we only accept connections from localhost

#bind-address = 127.0.0.1

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

symbolic-links=0

[client]

default-character-set=utf8

[mysql]

default-character-set=utf8

顺便说下,里面的这些配置,其实跟mysql的快速安装没有关系。主要是加上设置编码的内容,就是后面两句

[client]

default-character-set=utf8

[mysql]

default-character-set=utf8innodb_buffer_pool_size默认是128M

ngram_token_size默认分词是2,用于全文索引中文分词

ft_min_word_len默认值是4,只有四个字母的单词才会建立全文索引

4、创建mysql容器

这里创建的容器端口为3309,root密码为123456,数据和配置文件挂载点用上面创建的目录,设置编码格式为utf8mb4

docker create--name mysql3308-v/data/mysql/data3309:/var/lib/mysql-v/data/mysql/mysql.conf.d3309/mysqld.cnf:/etc/mysql/mysql.conf.d/mysqld.cnf-e MYSQL_ROOT_PASSWORD=123456-p3309:3306mysql:5.7--character-set-server=utf8mb4--collation-server=utf8mb4_unicode_ci

5、启动容器

docker start mysql3309

6、测试容器

首先进入到容器

dockerexec-it mysql3309 bash

然后用如下命令登录,当然也可以省去-h127.0.0.1

mysql-h127.0.0.1-uroot-p123456

若是进入到mysql命令行界面就表明安装成功

7、新建另一个mysql容器

只需要新建挂载点然后执行创建mysql容器命令即可。(注意端口号的修改)

8、一些操作命令docker stop mysql3309#停止容器

docker start mysql3309#启动容器

dockerexec-it mysql3309 bash#进入容器

docker search name#查询镜像

docker pull name#安装name镜像

docker images#查看已经拉取的镜像

docker ps#查看正在运行中的容器

docker ps-a#查看正在运行中的容器,包括未运行的

docker rm#容器ID 删除某一容器 //停止容器--》删除容器--》删除镜像

docker rmi#镜像ID 删除某一个镜像

systemctl start docker#启动docker

systemctl stop docker#停止docker

systemctl restart docker#重启docker

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/557938.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mysql 转型_MySQL的未来在哪?

阿里云 MySQL&MariaDB 数据库产品结合开源社区,提供了稳定、可靠、便捷、弹性的在线数据库服务,帮助全球企业客户进行数字化转型。MySQL发展经历了一系列变化,从Sun到Oracle,发展也经过了几个阶段。MySQL从5.7版本开始走上了代…

mongoose换成mysql_如何将MongoDB数据库的数据迁移到MySQL数据库中

FAQ v2.0终于上线了,断断续续忙了有2个多月。这个项目是我实践的第一个全栈的项目,从需求(后期有产品经理介入)到架构,再到设计(有征询设计师的意见)、构建(前端、后台、数据库、服务器部署),也是第一次独立负责一个项目&#xff…

java虚拟机——JVM

JVM:java虚拟机,简称JVM,是运行所有java程序的假想计算机,是java程序的运行环境,是java最具吸引力的特征之一。我们编写的java代码,都运行在JVM之上。 跨平台:任何软件的运行,都必须…

mysql 5.0.37.tar.gz_Linux下MySQL5.0.37安装配置步骤

Linux下安装MySQL5.0.37需要以下面三个包:MySQL-client-community-5.0.37-0.rhel3.i386.rpmMySQL-server-community-5.0.37-0.rhel3.i386.rpmperl-DBI-1.53-2.fc7.i386.rpm(以下步骤需要root权限)1.验证是否已经安装过MySQLrpm -qa|grep MySQL如果发现有安装过,并需要卸载,使用…

JRE和JDK

JRE:是java程序的运行时环境,包含JVM和运行时所需要的核心类库。 JDK:时java程序开发工具包,包含JRE和开发人员使用的工具。 我们想要运行一个已有的java程序,那么只需要安装JRE即可。 我们想要开发一个全新的java程序…

mysql index subquery_[慢查优化]慎用MySQL子查询,尤其是看到DEPENDENT SUBQUERY标记时

它的执行计划如下,请注意看关键词“DEPENDENT SUBQUERY”:id select_type table type possible_keys key key_len ref rows Extra------ ------------------ ------ ------------…

java程序开发步骤

java程序开发步骤 开发环境搭建完毕后,可以开发第一个程序了 java程序开发三个步骤:编写,编译,运行。

mysql数据库rp集群_MySQL集群入门(PXC)

目标:1.掌握PXC集群MySQL方案的原理;2.掌握PXC集群的强一致性;3.掌握PXC集群的高可用方案;硬件要求:1.Win10x64企业版/linux/MacOS;2.Docker虚拟机;3.内存8GB以上;单节点数据库的弊端…

标识符、命名规则

标识符:是指在程序中,我们自己定义的内容。比如:类的名字、方法的名字和变量的名字等等; 命名规则:(硬性要求) 标识符可以包含英文字母26个(区分大小写),0-9…

ssh源码编译安装mysql_总结源码编译安装mysql

最近在学习源码编译安装LAMP、LNMP时,一直遇到一个难题,就是就是mysql无论怎么源码编译安装,到最后启动服务都提示"Starting MySQL.The server quit without updating PID file (/data/mysql/localhost.pid). [FAILED]&quo…

java中的常量

常量:在程序运行期间,固定不变的量。 常量的分类: 字符串常量:凡是用双引号引起来的部分,如:“abc”,“Hello”,“123”整数常量:直接写上的数字,没有小数点,如&#xf…

mysql blgg__MySQL_exceptions.ProgrammingError:(2014,“命令不同步;您现在无法运行此命令”)?...

-- encoding: utf-8 --db_test.pyCreated on 2019/6/25 11:14Copyright (c) 2019/6/25, 海牛学院版权所有.author: 潘牛from commons.until.db_util import DBUtilfrom configs.config import _HAINIU_DBdb_util DBUtil(_HAINIU_DB)设置字符集是utf8mb4db_util.execute_no_com…

thinkphp三级分销小程序源码_山东谷道微信小程序商城源码带后台 公众号平台三级分销系统...

山东谷道微信小程序商城源码带后台 公众号平台三级分销系统那么微信二级分销系统与微信三级分销系统到底有什么区别和联系呢?为什么改了个数字地位就天差地别?1、微信分销模式等级的区别用简洁的话来说,微信的三级分销系统包含了微信的二级分销系统,只…

linux mysql timestamp_MySQL时间类型Timestamp和Datetime 的深入理解

MySQL数据库常用的时间类型有timestamp和datetime,两者主要区别是占用存储空间长度不一致、可存储的时间也有限制,但针对不同版本下,timestamp字段类型的设置需要慎重,因为不注意的可能会被“坑死”。一、TIMESTAMP和DATETIME字段…

数字和字符对照关系表常用(编码表)

ASCII码表:美国信息交换标准代码 Unicode码表:万国码,也是数字和字符的对照关系,开头0-127部分和ASCII完全一样,但是从128开始包含更多字符。 ‘0’——48 ‘A’——65 ‘a’——97

sql express 无法启动服务_在Windows2012下安装SQL Server 2005无法启动服务的解决办法...

因为安装了Windows2012操作系统,的确很不错,唯一的遗憾就是不支持Sql Server 2005的安装。找了很多办法,基本上都有缺陷。现在终于找到一种完全正常没有缺陷的办法了,和大家分享一下。1、正常安装任一版本的SQL Server 2005.2、安…

java中运算的注意事项

运算符:进行特定操作的符号,如: 表达式:用运算符连起来的式子叫做表达式。如:205,ab 四则运算: 加: 减:- 乘:* 除:/ 取模:% 对于一个整…

ecs php mysql集成环境_在阿里云 CentOS 服务器(ECS)上搭建 nginx + mysql + php-fpm 环境...

阿里云的云服务器(ECS)可以选择多种操作系统,打算用它运行 Drupal或者 WordPress ,你最好选择 Linux 系统,这篇文章的演示是基于阿里云的 CentOS 操作系统的服务器。我们在上面搭建一个 nginx mysql php-fpm 的环境,这就是常说的…

三元运算符

一元运算符:只需要一个数据就可以进行操作的运算符,如:取反,自增 二元运算符:需要两个数据才可以进行操作的运算符,如:加,减 三元运算符:需要三个数据才可以进行操作的运…

mysql infile local,MySQL:启用LOAD DATA LOCAL INFILE

Im running Mysql 5.5 on Ubuntu 12 LTS. How should I enable LOAD DATA LOCAL INFILE in my.cnf?Ive tried adding local-infile in my config at various places but Im still getting the "The used command is not allowed with this MySQL version"解决方案Fr…