linux中mysql的安装使用(普通版版本+docker版本)

linux中mysql的安装使用

一、普通安装

1.下载安装包

挑选个你喜欢的目录,用wget下载并且解压

bash 复制代码
wget http://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.16-1.el7.x86_64.rpm-bundle.tar
tar -xvf mysql-5.7.16-1.el7.x86_64.rpm-bundle.tar

或者你可以去官网,Operating System:选择Linux -Generic或者redcat,再选择你需要的版本。

2.流程

具体参考这篇文章linux原始方法安装mysql,非常麻烦配置也很多,稍不注意就跑不起来,感兴趣的可以去试试。

二、用docker安装

1.拉取mysql镜像

版本你根据自己情况随意,如果不加版本号默认拉取最新的,等价于:mysql:latest

bash 复制代码
docker pull mysql:5.7.5

2.启动镜像

启动参数,我这是简略版本,如果你有挂载目录的需求,请参考第二个参数写法

bash 复制代码
docker run -d -p 3306:3306 --name mysql1 -e MYSQL_ROOT_PASSWORD=123456 mysql

挂载格式

bash 复制代码
docker run -d -p 3306:3306 --name mysql1 \
        -v /dockerTest/mountdata/mysqldata/conf:/etc/mysql/conf.d \
        -v /dockerTest/mountdata/mysqldata/logs:/logs \
        -v /dockerTest/mountdata/mysqldata/data:/var/lib/mysql \
        -e MYSQL_ROOT_PASSWORD=123456 \
        mysql

3.开启权限

PS:我这里可能是我安装次数太多,我镜像启动完成直接就可以用Navicat连接了,你可以启动完成试试能不能连,如果你不能连接的话,那么照着下面做。

第一种情况

bash 复制代码
[root@localhost mountdata]# docker exec -it mysql1 bash
root@98f413cadfa7:/#

验证密码

bash 复制代码
root@98f413cadfa7:/# mysql -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.27 MySQL Community Server - GPL

Copyright (c) 2000, 2021, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 

输入以下三条命令来开启root远程权限:

bash 复制代码
#1 切换数据库
use mysql;  

#2 给root用户分配远程访问权限
GRANT ALL PRIVILEGES ON *.* TO root@'%' WITH GRANT OPTION;

#3 强制刷新权限 
FLUSH PRIVILEGES;  

第二种情况

第一种情况不行用这种,启动镜像的时候,在命令参数加上-e MYSQL_ROOT_HOST=%,表示允许任何ip的机器远程连接,这样启动参数就变成如下所示:

bash 复制代码
docker run -d -p 3306:3306 --name mysql1 -e MYSQL_ROOT_PASSWORD=123456 -e MYSQL_ROOT_HOST=% mysql

三、用Navicat连接

这里的密码,就是启动参数:-e MYSQL_ROOT_PASSWORD后面的内容

相关推荐
lsh曙光2 小时前
延时at指令和定时cron指令
linux·服务器·网络
圆山猫2 小时前
[Virtualization](四):Linux KVM/RISC-V 的 vCPU 运行路径
java·linux·risc-v
似的8353 小时前
一步一步学习使用FireMonkey动画() 使用TAnimator类创建动画
linux·学习·nginx
我不管我就要叫小猪4 小时前
嵌入式Linux----网络通信
linux·运维·服务器
神龙天舞20014 小时前
MySQL 备库为什么会延迟好几个小时
android·数据库·mysql
江湖有缘4 小时前
Docker实战 :使用Docker部署OneTerm堡垒机
运维·docker·容器
泡沫冰@4 小时前
ECS 的介绍和使用
linux·服务器·网络
姜太小白5 小时前
【Linux】df -h 卡住问题的通用排查与解决方案总结
linux·运维·php
fengyehongWorld5 小时前
Linux 终端快捷键
linux·运维
哎呦喂我去去去6 小时前
C#实现屏幕墙:同时监控多个电脑桌面(支持Windows、信创Linux、银河麒麟、统信UOS)
linux·windows·c#