眼睛会欺骗自己,或者只是想看你希望看到的
以下内容是基于 ubuntu 18 ,如果你在其他linux发行版中参照时需根据发行版具体的命令语法。
自从我把这台Ubuntu化妆成macos的样子的时候,越发的对linux喜欢了,最近又在docker,具体来说,docker是个什么呢,容我去别的地方粘贴一段过来;
Docker 是一个开源的应用容器引擎,基于 [Go 语言](http://www.runoob.com/go/go-tutorial.html) 并遵从Apache2.0协议开源。
Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。
接下来,废话不用多说 首先安装docker
sudo apt install docker.io
## 启动docker
sudo systemctl start docker
## 设置开机启动 docker
sudo systemctl enable docker
## 查看docker 安装的版本号
docker -v
配置成功之后,查看docker版本号如下:
可以看到提示版本号时,就表示已经安装成功
这种方法安装的docker不是最新版本,但是比较方便,如果要安装最新版的,可以直接从Docker仓库中下载,参考连接中有方法,需要的可以在本文最底下查阅。
接下来就是在Docker中安装启动MySql
## 从默认的仓库下载 mysql 镜像:
sudo docker pull mysql
这个过程要根据网络情况,建议配置国内镜像,或者使用比较科学的方式。 下载完之后,用docker启动mysql的镜像。
sudo docker run -d -p 13306:3306 --name mysqld -v /opt/mydata/:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root mysql:latest
## 参数解释
## -p 13306:3306 是将容器中的 3306端口映射到宿主机的13306端口[镜像的默认端口是3306,这个端口可以修改镜像文件来改,后续更新时会提到]
## -v 将宿主机/opt/mydata 挂在到容器的 /var/lib/mysql 这也是镜像默认的目录
## -e 设定初始的密码我这里设定为 root
## --name 设定容器的名称
## mysql:latest 表示获取最新的mysql镜像
至此 mysql 在docker 中就安装完成了,我们需要配置一下局域网内其他设备可以使用,不然只能用localhost的方式访问哦。
## 进入docker 容器
sudo docker exec -it mysqld /bin/bash
## docker exec 进入容器
## -i 让容器的标准输入保持打开
## -t 让docker 分配一个伪终端,并绑定到容器的标准输入上
## mysqld 容器的名字
## 查看mysql 版本号
mysql --version
结果如下图(第一次查看的时候 少写了个-下面那行报错信息请无视 @_@)
mysql-version.png
接下来,进入mysql 开始配置远程登陆
mysql -uroot -p
## 输入密码后 切换到 mysql 的库
use mysql;
## 查看当前是否支持 远程访问
select host,user, authentication_string,plugin from user;
host = % user = 当前登陆的用户的,就表示支持远程登陆,默认装好之后,是没有开启的。
## 设定 root 用户的所有权限 并设置远程访问
GRANT ALL ON *.* TO 'root'@'%';
## 刷新权限
flush privileges;
补充
用可视化工具 如 navicat SQLyog,mysql workbench 等工具时,
因为mysql 8 版本和5 的加密规则不一样,而现在的可视化工具大部分都采用旧版的加密方式,所以,这里可以将mysql的加密规则修改成 旧版的加密规则
## 修改加密规则
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root' PASSWORD EXPIRE NEVER;
## 更新root 用户的密码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
## $ 上面两行中的 ‘root’ 都是密码如果你设定的密码和我的不一样时。
## 刷新权限
flush privileges;
搞定。
接下来,用工具测试访问以下。看帖子好多大神推荐 mysql-workbench ,这里我也搬运一下
## 安装mysql-workbench
sudo apt-get install mysql-workbench
这个安装相对简单,提示 输入y即可 安装成功之后,在菜单中找出来。然后固定到收藏夹就可以了,就像我这样。
mysql-workbench.png
连接mysql
打开 workbench 按下图中的 + 号
link-mysql.png
1.输入连接名称
2.输入hostname 和 port 这里hostname我保持默认,端口被我改称13306 了需要改一下
3.点击 Test Connection 测试连接
input-password.png
4.提示输入密码。输入完毕之后,就到了这个界面了,做个简单的测试,
mysql-workbench-ui.png
到此,安装就已经全部结束了。后续适应一下,我会对这个工具做个简单的说明。
本文参考以下教程连接,如有侵权,清联系我。
## 在Ubuntu中安装Docker
https://blog.csdn.net/u010889616/article/details/80170767
## mysql 8 设定权限
https://blog.csdn.net/xinpengfei521/article/details/80403965
## workbench 安装教程
https://blog.csdn.net/qq_34256348/article/details/78342897
网友评论