sql MySQL5.7 安装 centos docker
MySQL5.7 安装
1 . 普通安装
# 准备工作 停止以前的数据库并删除配置文件
systemctl stop mysqld
rpm -e mysql-community-server-5.7.26-1.el7.x86_64
rm -f /etc/my.cnf
rm -rf /etc/my.cnf.d
rm -rf /var/lib/mysql
# 查看是否有Mariadb运行并结束和移除mariadb
yum list installed | grep mariadb | xargs yum remove -y
yum list installed | grep mariadb | awk '{print $1}' | xargs yum erase -y
systemctl stop mariadb
# 再次检查3306端口有无占用
netstat -nap | grep 3306
# rpm 安装
cd /root/mysql
rpm -ivh mysql-community-server-5.7.26-1.el7.x86_64.rpm
# wget 下载安装
cd mysql
# 下载
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar
# 解压
tar -xvf mysql-5.7.26-1.el7.x86_64.rpm-bundle.tar
# 依次安装下面的rpm包
rpm -ivh mysql-community-common-5.7.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.26-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.26-1.el7.x86_64.rpm
# 停止
systemctl stop mysqld
rpm -e mysql-community-server-5.7.26-1.el7.x86_64
rm -f /etc/my.cnf
rm -rf /etc/my.cnf.d
rm -rf /var/lib/mysql
cd /root/mysql
rpm -ivh mysql-community-server-5.7.26-1.el7.x86_64.rpm
vim /etc/my.cnf
skip-grant-tables
systemctl restart mysqld
mysql -u root -p
use mysql;
update user set authentication_string=password('你自己的密码') where user='root';
flush privileges;
select user, host, authentication_string from user;
create user 'root'@'%' identified by 'luohao.11.28';
grant all privileges on *.* to 'root'@'%';
flush privileges;
grant all privileges on *.* to 'root'@'%' identified by 'luohao.11.28';
2 . mysql初始化密码常见报错问题
- mysql5.6是密码为空直接进入数据库的,但是mysql5.7就需要初始密码
cat /var/log/mysqld.log | grep password
2)然后执行 mysql -uroot -p ,输入上面的到的密码进入,用该密码登录后,必须马上修改新的密码,不然会报如下错误:
mysql> use mysql;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
3)如果你想要设置一个简单的测试密码的话,比如设置为123456,会提示这个错误,报错的意思就是你的密码不符合要求
mysql> alter user 'root'@'localhost' identified by '123456';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
这个其实与validate_password_policy的值有关。
validate_password_policy默认是1,即MEDIUM,所以刚开始设置的密码必须符合长度,且必须含有数字,小写或大写字母,特殊字符。
有时候,只是为了自己测试,不想密码设置得那么复杂,譬如说,我只想设置root的密码为123456。
必须修改两个全局参数:
首先,修改validate_password_policy参数的值
mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.00 sec)
validate_password_length(密码长度)参数默认为8,我们修改为1
mysql> set global validate_password_length=1;
Query OK, 0 rows affected (0.00 sec)
- 完成之后再次执行修改密码语句即可成功
mysql> alter user 'root'@'localhost' identified by '123456';
Query OK, 0 rows affected (0.00 sec)
3 . docker安装
# 安装docker
yum install -y docker-io
# 启动docker
systemctl start docker
# 下载MySQL镜像
docker pull mysql:5.7
# 查看镜像
docker images
# 运行MySQL容器
docker run -d -p 3306:3306 --name mysql57 -e MYSQL_ROOT_PASSWORD=123456 mysql:5.7
# 查看运行容器
docker ps
4 . docker安装且数据本地化
# 建目录mysql_data
cd mysql_data
# 运行临时容器
docker run -d -p 3306:3306 -v $(pwd):/app --name tempMysql -e MYSQL_ROOT_PASSWORD=LiuLangPython docker.io/mysql:5.7
# 进入mysql容器
docker exec -it tempMysql /bin/bash
# 把 etc/mysql 目录下的所有文件,复制到 app 目录下,由于之前做了本地同步,所以能看到本地文件夹./conf 内有mysql配置文件
cp -r /etc/mysql/* /app
# 删除容器
ctrl+p+q # 退出容器
docker stop tempMysql # 停止容器
docker rm tempMysql # 删除容器
# 可选(复制数据进新数据库)
mkdir data
cd data
cp -r /var/lib/mysql/* .
# 创建新容器, 是本地mysql文件夹和容器中的 mysql相关文件做同步。
docker run -d -p 3306:3306 --name mysql57 \
-v $(pwd)/conf:/etc/mysql \
-v $(pwd)/logs:/var/log/mysql \
-v $(pwd)/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=LiuLangPython docker.io/mysql:5.7
sql MySQL5.7 安装 centos docker的更多相关文章
- 安装centos docker ce
安装centos docker ce 移除旧的版本: $ sudo yum remove docker \ docker-client \ docker-client-latest \ docker- ...
- [sql]mysql5.6cmake安装/mysql5.7二进制安装
centos7上cmake编译安装mysql-5.6.36.tar.gz 系统环境 - 环境(安装前规划好主机名,mysql编译过程会用) [root@n1 mysql-5.6.36]# cat /e ...
- mysql5.7在centos上安装的完整教程以及相关的“坑”
安装前的准备 Step1: 如果你系统已经有mysql,如一般centos自带mysql5.1系列,那么你需要删除它,先检查一下系统是否自带mysql yum list installed | gre ...
- 使用 Linux Centos Docker 安装 2Bizbix
在 Docker 安装 2Bizbix 安装 Centos 7 安装 mysql5.5 镜像 映射好数据库的配置文件和数据库目录 在 Windows 安装 2Bizbox 安装 jboss/base- ...
- docker下安装centos,并在其上搭建lnmp环境
一.安装CentOs容器 1.进入docker下载CentOs,这里我使用的CentOs6.8 docker pull centos:6.8 2.创建容器 sudo docker run --priv ...
- centos 7安装部署docker
1.centos 7 在windows下通过vm虚拟机安装centos 7: VMware-workstation-full-10.0.3-1895310 centos 7 2.要求 操作系统的内核版 ...
- centos docker 安装
centos docker 安装 参考网站 https://docs.docker.com/install/linux/docker-ce/centos/ 1.删除原有docker $ sudo yu ...
- Centos + docker,Ubuntu + docker介绍安装及详细使用
docker笔记 常用命令 设置docker开机自启:sudo chkconfig docker on 查所有镜像: docker images 删除某个镜像:docker rmi CONTAINER ...
- Docker 安装Centos,Tomcat,Jdk等相关的自定义(Dockerfile)镜像
一.安装Centos镜像 这里Centos 安装 国内daocloud网站提供的官方镜像 docker pull daocloud.io/library/centos:latest 利用docker ...
随机推荐
- 关于地址栏url的一些小结
1.获取整个地址栏地址 //获取整个地址栏地址 var href = window.location.href; console.log(href); 以上代码就是获取整个url地址 2.获取url协 ...
- 基于springcloud搭建项目-公共篇(二)
上一篇已经写过如何搭建注册中心eureka,这一篇主要是搭建一些公共的api接口服务,并把实体类单独拿出来放到一个服务上引用,比较简单的 1.首先.创建一个实体类服务,这样就不用在每个服务里创建实体了 ...
- 教妹学Java:Spring 入门篇
你好呀,我是沉默王二,一个和黄家驹一样身高,刘德华一样颜值的程序员(管你信不信呢).从两位偶像的年纪上,你就可以断定我的码龄至少在 10 年以上,但实话实说,我一直坚信自己只有 18 岁,因为我有一颗 ...
- JetBrains全系列产品2019.3.2注解教程
1.JetBrains官方网站 https://www.jetbrains.com/ JetBrains是一家捷克的软件开发公司 IDE工具: * IntelliJ IDEA 一套智慧型的Jav ...
- JS中的reduce()详解
reduce()作为一个循环使用.接收四个参数:初始值(上一次返回值),当前元素值,当前元素下标,原数组. 应用 作为累加器使用 var a=[4,5,6,7,8] //item代表一次回调的值 初 ...
- 内网渗透之信息收集-Linux系统篇
linux 系统信息 grep MenTotal /proc/meminfo #查看系统内存总量 cat /etc/issue #查看系统名称 cat /etc/lsb-release #查看系统名称 ...
- 简说python之安装
Python是跨平台程序语言,做为世界流行的语言之一,它可以平滑地部署在Windows,Linux,Mac等平台之上,并有很多第三方模块的函数可供使用. 学习Python,首先需要把Python的编译 ...
- 使用mitmproxy抓包手机APP的配置步骤
转: https://www.jianshu.com/p/8ee3f9f46d7a 注意 1. 手机安装完证书之后还有一步 “证书信任设置” 操作 2. 手机设置代理的时候 ip地址和电脑本机是一样的
- C++ 小练习,一个整型数字的处理
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> //输入一个任意位数的int整数,并判断该整数的位数,并输出每一位数(每个数字中间用空 ...
- C++结构体和类的区别总结及各自优缺点
结构体在栈里.而类在堆里. 结构体为值类型.而类是引用类型 结构体不能被继承,而类可以. 结构体无构造函数 类可以定义虚函数,而结构体不行. 结构在数据参数方面效率更高,简单数组的应用中成本很低.而类 ...