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 ...
随机推荐
- JDK 1.8 新特性之Date-Time API
来源:请点击查看 1.8之前的日期类: 线程不安全:java.util.Date 这个类线程不安全,而且所有日期类都是可变的. 时间处理麻烦:默认的开始日期从1900年,不支持国际化,不提供时区支持, ...
- SpringBoot入门系列(三)资源文件属性配置
前面介绍了Spring的@Controller和@RestController控制器, 他们是如何响应客户端请求,如何返回json数据.不清楚的朋友可以看看之前的文章:https://www.cnbl ...
- 【JavaScript】DOM之Document对象
JS(JavaScript) 一.Document对象 1.Document对象是什么 Document对象 是DOM的基本规范也是重要的对象之一,以访问,更新页面内容的属性和方法通过conslie. ...
- 2017、2018面试分享(js面试题记录)记得点赞分享哦;让更多的人看到~~
2017面试分享(js面试题记录) 1. 最简单的一道题 '11' * 2 'a8' * 3 var a = 2, b = 3; var c = a+++b; // c = 5 2. 一道this的问 ...
- JZOJ 5258. 友好数对 (Standard IO)
5258. 友好数对 (Standard IO) Time Limits: 1000 ms Memory Limits: 524288 KB Detailed Limits Description I ...
- 200行代码,7个对象——让你了解ASP.NET Core框架的本质[3.x版]
2019年1月19日,微软技术(苏州)俱乐部成立,我受邀在成立大会上作了一个名为<ASP.NET Core框架揭秘>的分享.在此次分享中,我按照ASP.NET Core自身的运行原理和设计 ...
- python框架Django实战商城项目之工程搭建
项目说明 该电商项目类似于京东商城,主要模块有验证.用户.第三方登录.首页广告.商品.购物车.订单.支付以及后台管理系统. 项目开发模式采用前后端不分离的模式,为了提高搜索引擎排名,页面整体刷新采用j ...
- swoole websocket_server 聊天室--群聊
centos7 php7.2 swoole4.3 nginx1.8 websocket_server 代码 <?php $server = new Swoole\WebSocket\Serve ...
- 借助Redis完成延时任务
背景 相信我们或多或少的会遇到类似下面这样的需求: 第三方给了一批数据给我们处理,我们处理好之后就通知他们处理结果. 大概就是下面这个图说的. 本来在处理完数据之后,我们就会马上把处理结果返回给对方, ...
- 【Python】2.17学习笔记 移位运算符,逻辑运算符
移位运算符 左移运算符 \(<<\),将对应的二进制数末尾补一颗零,高位自然溢出(遁入虚无 print( 5 << 2 ) 把\(5\)的二进制数左移两位 即把\(101\)变 ...