MySQL简单介绍:

  MySQL 是一个开放源码的关系数据库管理系统,开发者为瑞典 MySQL AB 公司。目前 MySQL 被广泛地应用在 Internet 上的大中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了 MySQL 作为网站数据库。

查看可用的MySQL版本:

访问DokcerHub中的MySQL镜像库地址:https://hub.docker.com/_/mysql/tags

可以通过 Sort by 查看其他版本的MySQL,查看最新版本MySQL镜像(mysql:latest):https://hub.docker.com/_/mysql/tags?page=1&name=latest

此外,我们还可以用docker search mysql命令来查看可用版本:

拉取最新版本的MySQL镜像:

docker pull mysql:latest

注意:tag是可选的,tag表示标签,多为软件的版本,默认是latest版本(最新版)

验证MySQL镜像是否成功拉取到本地:

使用以下命令来查看mysql镜像是否成功拉取到本地:

docker images

创建并运行一个MySQL容器:

docker run --name=mysql-test -itd -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root123456 -d mysql

参数说明:

  • --name:指定了容器的名称,方便之后进入容器的命令行。
  • -itd:其中,i是交互式操作,t是一个终端,d指的是在后台运行。
  • -p:指在本地生成一个随机端口,用来映射mysql的3306端口。
  • -e:设置环境变量。
  • MYSQL_ROOT_PASSWORD=root123456:指定了MySQL的root密码
  • -d mysql:指运行mysql镜像,设置容器在在后台一直运行。

验证MySQL容器是否创建并运行成功:

docker ps

1、进入MySQL容器:

docker exec -it mysql-test /bin/bash

2、进入MySQL:

mysql -uroot -p

Enter password:root123456

MySQL开启远程访问权限:

1、切换数据库

注意:默认应该就是这个,不切换也行,保险起见还是切换一下

use mysql;

2、给root用户分配远程访问权限

GRANT ALL PRIVILEGES ON *.* TO root@'%' WITH GRANT OPTION;

参数说明:

  • GRANT:赋权命令
  • ALL PRIVILEGES:当前用户的所有权限
  • ON:介词
  • *.*:当前用户对所有数据库和表的相应操作权限
  • TO:介词
  • ‘root’@’%’:权限赋给root用户,所有ip都能连接
  • WITH GRANT OPTION:允许级联赋权

3、强制刷新权限

FLUSH PRIVILEGES;

服务器配置3306的开放端口:

Navicat 连接 MySQL8 报错:2059 - Authentication plugin ‘caching_sha2_password’ cannot be loaded:xxxx;

错误问题原因:

  这是因为MySQL8之前密码加密规则为mysql_native_password,而 MySQL8 之后的加密规则为caching_sha2_password,也就是说,如果要用Navicat连接MySQL,其实只需要将密码规则改回 mysql_native_password 即可;

解决方法:

1.进入MySQL数据库

docker exec -it mysql-test /bin/bash
mysql -uroot -p
Enter password:root123456

2.选择数据库

use mysql;

3.更改密码加密方式

IDENTIFIED BY ‘root123456’:连接时输入密码,密码为root123456

ALTER USER 'root'@'%' IDENTIFIED BY 'root123456' PASSWORD EXPIRE NEVER; 

4.更新用户密码

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root123456'; 

5.刷新权限

FLUSH PRIVILEGES;

Navicat连接MySQL测试:

Docker安装MySQL并使用Navicat连接的更多相关文章

  1. ubuntu安装mysql并使用Navicat连接

    今天配置了一下自己的服务器,发现网上很多教程都有点老,而且不是很全.干脆就写一篇Ubuntu安装mysql,并用Navicat连接的全流程 一.安装mysql 1. sudo apt-get inst ...

  2. linux安装mysql以及使用navicat连接mysql

    一.下载mysql 1.获取下载链接 进入官网:https://www.mysql.com 点击downloads --> MySQL Community (GPL) Downloads  -- ...

  3. Docker 安装 MySQL 并实现远程连接

    获取 MySQL 镜像 docker pull mysql:5.6 查看镜像列表 docker images 启动 MySQL 镜像 docker run -itd -P mysql:5.6 bash ...

  4. Docker安装MongoDB并使用Navicat连接

    MongoDB简介: MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可扩展的高性能数据存储解决方案.是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库 ...

  5. [转]Docker学习之四:使用docker安装mysql

    本文转自:https://blog.csdn.net/qq_19348391/article/details/82998391 Docker学习之一:注册Docker Hub账号 Docker学习之二 ...

  6. docker 安装mysql mongo

    Docker安装Mysql 1.拉取镜像 docker pull mysql/mysql-server 2.运行mysql docker run -d -p : --name [Name] [Imag ...

  7. 使用Docker安装Mysql

    最近使用阿里云服务器,学习一下Docker,今天学着使用Docker安装MySQL. 首先,从阿里云的Docker Hub 上pull一个MySQL的image. [centos@loovelj~]$ ...

  8. Docker学习实践 - Docker安装MySql数据库

    Docker安装MySQL数据库 1.Ubuntu安装MySQL安装 (1)安装编译源码需要的包 sudo apt-get install make cmake gcc g++ bison libnc ...

  9. 解决Docker安装MySQL不区分大小写问题

    Docker安装MySQL忽略大小写问题的问题连接MySQL: 查看当前mysql的大小写敏感配置 show global variables like '%lower_case%'; +------ ...

随机推荐

  1. 零基础学Java(4)字符串

    字符串 从概念上讲,Java字符串就是Unicode字符序列.例如,字符串"Java\u2122"由5个Unicode字符J.a.v.a和组成.Java没有内置的字符串类型,而是在 ...

  2. 什么是pytorch?

    Pytorch是基于python的科学计算包,为两类受众提供服务 作为Numpy的替换,让你可以使用GPU的算力 作为一个深度学习计算平台提供最大的计算灵活性与速度 开始体验pytorch的基础功能 ...

  3. 动画 ---Animejs 简单使用与源码解析

    Anime是什么 Anime有什么用 Anime是作何做的 requireAnimationFrame() engine(){ // 处理让多个帧运动起来 ​ play() ​ step()} ani ...

  4. BUCK 电路PSIM仿真模型搭建之二 (传递函数模块的使用)

    1. 利用S函数模块进行环路仿真 将PI 写成 截止频率的表示形式 Kp* (Ti*s+1)/Ti*s  ,  这里Kp = 20,  Ti = 0.0001  ,  写入仿真模型参数框 仿真结果: ...

  5. 04.nvue开发

    nvue开发注意项 nvue专用内置组件跟api https://uniapp.dcloud.io/nvue-outline?id=_2开发nvue页面 网络示例 https://www.cnblog ...

  6. Kubernetes组件介绍

    一.api-server   基本概念 该端口默认值为6443,可通过启动参数"--secure-port"的值来修改默认值. 默认IP地址为非本地(Non-Localhost)网 ...

  7. 2022-7-20 第七组 pan小堂 String

    字符串 String 字符串部分方法 字符串对象的特点: 1.Java程序中所有双引号引起来的内容,都是String类的对象 2.字符串内容不可变,它们的值在创建后不能被更改(在底层被final修饰, ...

  8. 有一种密码学专用语言叫做ASN.1

    目录 简介 ASN.1的例子 ASN.1中的内置类型 ASN.1中的限制语法 总结 简介 ASN.1是一种跨平台的数据序列化的接口描述语言.可能很多人没有听说过ASN.1, 但是相信有过跨平台编程经验 ...

  9. 丽泽普及2022交流赛day17 社论

    http://zhengruioi.com/contest/1088 SoyTony 重新 rk1 . stO SoyTony Orz 省流:俩计数 . 目录 目录 A 题面 题解 Key 算法 1( ...

  10. js实现全屏弹框

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...