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后面的内容

相关推荐
刚入门的大一新生7 分钟前
Linux-线程概念
linux·jvm
H.莓飛16 分钟前
【数据结构】排序总结与规模实测
linux·服务器·开发语言·数据结构·visual studio·1024程序员节
瑞克-桑切斯19 分钟前
2、 MySQL 主从复制与读写分离
数据库·mysql
Zenova EdgeOS42 分钟前
Linux 日志实战:用 journalctl 精准检索与治理工业边缘日志
linux·运维·chrome
Dxy12393102161 小时前
Linux 压缩解压相关命令介绍
linux·运维·服务器
eleven_4u1 小时前
QPS如何计算,如何部署架构
java·linux·运维·jvm·中间件
秋饼1 小时前
MySQL 分库分表完全指南:ShardingSphere-JDBC 实战、分片键选型、场景边界、20 个生产坑与 30 道面试点
java·mysql·面试·shardingsphere·分库分表·后端架构
东城居士2 小时前
理解Linux RTC驱动
linux·嵌入式系统
蘑菇小白2 小时前
Linux多线程开发
linux·开发语言·线程
JavaPub-rodert2 小时前
王仕宇分享:把 MySQL 排障做成 AI Agent,慢 SQL、锁等待、连接数和主从异常都能自动查
人工智能·sql·mysql