mysql8安装和驱动jar包下载

方式一:基于docker安装

下拉镜像

docker pull mysql:8.0.21

启动镜像
docker run -p 3307:3306 --name mysql -e MYSQL_ROOT_PASSWORD=hadoop -d mysql:8.0.21

启动成功后,进入容器内部拷贝配置文件,到宿主主机
docker cp mysql:/etc/mysql /home/summer/mysql8

拷贝容器的 /etc/mysql目录到 主机目录/home/summer/mysql8

删除mysql容器,重新创建容器
docker stop mysql docker rm mysql

启动mysql ,挂载配置文件,数据持久化到宿主主机
启动脚本 文件名为mysql8.0.21.sh

#!/bin/sh
docker run \
-p 3307:3306 \
--name mysql \
--privileged=true \
--restart unless-stopped \
-v /home/summer/mysql8/mysql:/etc/mysql \
-v /home/summer/mysql8/logs:/logs \
-v /home/summer/mysql8/data:/var/lib/mysql \
-v /etc/localtime:/etc/localtime \
-e MYSQL_ROOT_PASSWORD=hadoop \
-d mysql:8.0.21

命令解释: -p 端口映射

--privileged=true 挂载文件权限设置

--restart unless-stopped 设置 开机后自动重启容器

-v /home/summer/mysql8/mysql:/etc/mysql 挂载配置文件

-v /home/summer/mysql8/logs:/logs \ 挂载日志

-v /home/summer/mysql8/data:/var/lib/mysql \ 挂载数据文件 持久化到主机,

-v /etc/localtime:/etc/localtime 容器时间与宿主机同步

-e MYSQL_ROOT_PASSWORD=hadoop 设置密码

-d mysql:8.0.21 后台启动,mysql

执行脚本 启动镜像

大功告成,挂载出来了数据文件以及配置文件实现数据持久化

ALTER USER "root"@"localhost" IDENTIFIED BY "hadoop";
FLUSH PRIVILEGES;
create user summer@'%' identified  by '123456';
grant all privileges on *.* to summer@'%' with grant option;
exit;
use mysql;
update user set host = '%' where user ='summer'; 
ALTER USER 'summer'@'%' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
ALTER USER 'summer'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
exit;

方式二:正常tar包安装

上传安装包并解压
root in summer in /home/soft 
❯ ll
total 473712
-r-------- 1 root root 485074552 May 17 09:51 mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz
root in summer in /home/soft 
➜ du -sh *
463M    mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz
root in summer in /home/soft 
➜ tar -xvf mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz
移动重命名
root in summer in /home/soft took 2m 
➜ ll
total 473716
drwxr-xr-x 9 root root      4096 May 17 10:43 mysql-8.0.19-linux-glibc2.12-x86_64
-r-------- 1 root root 485074552 May 17 09:51 mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz
root in summer in /home/soft 
➜ mv mysql-8.0.19-linux-glibc2.12-x86_64 /usr/local/
root in summer in /home/soft 
➜ cd /usr/local/ && mv mysql-8.0.19-linux-glibc2.12-x86_64/ mysql
root in summer in /usr/local 
➜ ll
total 60
drwxr-xr-x  9 nobody nobody 4096 Apr 25 10:27 ats
drwxr-xr-x. 3 root   root   4096 Apr 25 12:14 bin
drwxr-xr-x. 4 root   root   4096 Apr 25 12:12 etc
drwxr-xr-x. 2 root   root   4096 Apr 11  2018 games
drwxr-xr-x. 5 root   root   4096 Apr 25 10:51 include
drwxr-xr-x. 5 root   root   4096 Apr 25 10:51 lib
drwxr-xr-x. 2 root   root   4096 Apr 11  2018 lib64
drwxr-xr-x. 2 root   root   4096 Apr 11  2018 libexec
drwxr-xr-x  2 root   root   4096 Apr 25 10:27 man
drwxr-xr-x  9 root   root   4096 May 17 10:43 mysql
lrwxrwxrwx  1 root   root     20 Apr 25 10:52 python374 -> /usr/local/python377
drwxr-xr-x  6 root   root   4096 Apr 25 10:52 python377
drwxr-xr-x. 2 root   root   4096 Apr 25 10:51 sbin
drwxr-xr-x. 7 root   root   4096 Apr 25 10:51 share
drwxr-xr-x. 2 root   root   4096 Apr 11  2018 src
drwxr-xr-x  3 root   root   4096 Apr 25 10:51 var
root in summer in /usr/local 
➜ 
新增mysql用户
root in summer in /usr/local 
➜ cd mysql/
root in summer in /usr/local/mysql 
➜ ll
total 432
drwxr-xr-x  2 7161 31415   4096 Dec 10  2019 bin
drwxr-xr-x  2 7161 31415   4096 Dec 10  2019 docs
drwxr-xr-x  3 7161 31415   4096 Dec 10  2019 include
drwxr-xr-x  6 7161 31415   4096 Dec 10  2019 lib
-rw-r--r--  1 7161 31415 405571 Dec 10  2019 LICENSE
drwxr-xr-x  4 7161 31415   4096 Dec 10  2019 man
-rw-r--r--  1 7161 31415    687 Dec 10  2019 README
drwxr-xr-x 28 7161 31415   4096 Dec 10  2019 share
drwxr-xr-x  2 7161 31415   4096 Dec 10  2019 support-files
root in summer in /usr/local/mysql 
➜ mkdir data
root in summer in /usr/local/mysql 
➜ groupadd mysql
root in summer in /usr/local/mysql 
➜ useradd -g mysql mysql
root in summer in /usr/local/mysql 
➜ chown -R mysql:mysql /usr/local/mysql/
root in iscloud163-200 in /usr/local/etc 
❯ mkdir /var/log/mariadb
root in iscloud163-200 in /usr/local/etc 
➜ touch /var/log/mariadb/mariadb.log
root in iscloud163-200 in /usr/local/etc 
➜ chown -R mysql:mysql /var/log/mariadb/
初始化
root in summer in /usr/local/mysql 
➜ /usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
2021-05-17T02:46:09.950578Z 0 [Warning] [MY-011070] [Server] 'Disabling symbolic links using --skip-symbolic-links (or equivalent) is the default. Consider not using this option as it' is deprecated and will be removed in a future release.
2021-05-17T02:46:09.950757Z 0 [System] [MY-013169] [Server] /usr/local/mysql/bin/mysqld (mysqld 8.0.19) initializing of server in progress as process 1868276
2021-05-17T02:46:18.144914Z 5 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: bkXul9__qP*8
修改配置文件
  • 注意skip-grant-tables该参数为修改root密码
root in summer in ~ 
➜ cat /etc/my.cnf
[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
port=23306
user=mysql
socket=/tmp/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd
#skip-grant-tables[mysqld_safe]
log-error=/var/log/mariadb/mariadb.log
pid-file=/var/run/mariadb/mariadb.pid#
# include all files from the config directory
#
!includedir /etc/my.cnf.d
添加系统服务
root in summer in /usr/local/mysql 
❯ cp -a /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
root in summer in /usr/local/mysql 
➜ chmod +x /etc/rc.d/init.d/mysqld
root in summer in /usr/local/mysql 
➜ chkconfig --add mysqld
配置环境变量
❯ vim /etc/profile
root in summer in /usr/local/mysql took 16s 
➜ source /etc/profile
root in summer in /usr/local/mysql 
❯ ln -s /usr/local/mysql/bin/mysql /usr/bin
root in summer in /usr/local/mysql 
➜ ln -s /usr/local/mysql/bin/mysqld /usr/bin
定义root密码
root in summer in /usr/local/mysql 
➜ /etc/init.d/mysqld restart
MySQL server PID file could not be found!                  [FAILED]
Starting MySQL.....                                        [  OK  ]
root in summer in /usr/local/mysql 
➜ mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 7
Server version: 8.0.19 MySQL Community Server - GPLCopyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.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> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -ADatabase changed
mysql> update user set authentication_string='' where user='root';
Query OK, 1 row affected (0.01 sec)
Rows matched: 1  Changed: 1  Warnings: 0mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)mysql> ALTER user 'root'@'localhost' IDENTIFIED BY 'hadoop';
Query OK, 0 rows affected (0.18 sec)mysql> \q
Byeroot in summer in /usr/local/mysql took 2m37s 
➜ vim /etc/my.cnf  ##这里注释掉skip-grant-tables
root in summer in /usr/local/mysql took 10s 
➜ /etc/init.d/mysqld restart
Shutting down MySQL..                                      [  OK  ]
Starting MySQL...                                          [  OK  ]
验证版本并登录
root in summer in local/mysql/data 
➜ ps -ef | grep mysql
root     1945961       1  0 11:01 ?        00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/summer.pid
mysql    1946194 1945961  0 11:01 ?        00:00:10 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/var/log/mariadb/mariadb.log --pid-file=/usr/local/mysql/data/summer.pid --socket=/tmp/mysql.sock --port=23306
root     2075003 2049242  0 11:39 pts/3    00:00:00 grep --color=auto mysql
root in summer in /usr/local/mysql 
❯ mysql -V
mysql  Ver 8.0.19 for linux-glibc2.12 on x86_64 (MySQL Community Server - GPL)
root in summer in /usr/local/mysql took 6s 
➜ mysql -u root -p 
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.19 MySQL Community Server - GPLCopyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.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>
下载mysql驱动jar包

进入官网 MySQL 点击DOWNLOADS

然后拉到最下面,点击MySQL Community(GPL) Downloads

然后选择Connector/J,这里的J是Java的意思

这里如果是windows用户的话,选择Platform Independent,如果是其他用户就选其他版本

点击Download

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/139645.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

人工智能基础——图像认知与OpenCV

人工智能的学习之路非常漫长,不少人因为学习路线不对或者学习内容不够专业而举步难行。不过别担心,我为大家整理了一份600多G的学习资源,基本上涵盖了人工智能学习的所有内容。点击下方链接,0元进群领取学习资源,让你的学习之路更加顺畅!记得…

pandas笔记:读写excel

1 读excel read_excel函数能够读取的格式包含:xls, xlsx, xlsm, xlsb, odf, ods 和 odt 文件扩展名。 支持读取单一sheet或几个sheet。 1.0 使用的数据 1.1 主要使用方法 pandas.read_excel(io, sheet_name0, header0, namesNone, index_colNone, usecolsNon…

pyqt环境搭建

创建虚拟环境 # 用管理员身份运行 conda create --prefixE:\Python\envs\pyqt5stu python3.6 # 激活虚拟环境 conda activate E:\Python\envs\pyqt5stu # 退出虚拟环境 conda deactivate安装包 pip install PyQt5 -i https://pypi.douban.com/simple pip install PyQt5-tools…

如何用Excel软件制作最小二乘法①

一、用自带的选项(不推荐),因为感觉只是近似,虽然结果一样 1.在Excel中输入或打开要进行在excel中输入或打开要进行最小二乘法拟合的数据,如图所示。 2.按住“shift”键的同时,用鼠标左键单击以选择数据&a…

【4】Gradle-快速入门使用【Gradle多模块项目详解】

目录 【4】Gradle-快速入门使用【Gradle多模块项目详解】创建多项目构建添加子项目命名建议 项目依赖项项目路径不同模块的build.gradle配置 子项目之间共享构建逻辑公约插件跨项目配置buildSrc开发公约插件 调整多模块项目配置修改项目树的元素 了解Gralde配置时间和执行时间并…

红黑树,AVLTree树(平衡二叉树)迭代器原理讲解

红黑树,AVLTree树底层实现逻辑都是平衡二叉树(AVLTree高度平衡,红黑树以某种规则平衡),但终究不像链表的迭代器那样逻辑简单。 简单叙述以下,二叉树上面迭代器的运行逻辑,根据下面的图&#xff…

Nginx:如何实现一个域名访问多个项目

1. 背景介绍 最近在多个项目部署中遇到这样一个问题,一个域名如何实现多个项目的访问。因为不想自己单独去申请域名证书和域名配置,便想到了这个方案,结合Nginx的location功能实现了自己的需求,便记录下来。示例中是以项目演示&a…

从TCP到Socket,彻底理解网络编程是怎么回事

进行程序开发的同学,无论Web前端开发、Web后端开发,还是搜索引擎和大数据,几乎所有的开发领域都会涉及到网络编程。比如我们进行Web服务端开发,除了Web协议本身依赖网络外,通常还需要连接数据库,而数据库连…

OpenWRT配置SFTP远程文件传输,让数据分享更安全

文章目录 前言 1. openssh-sftp-server 安装2. 安装cpolar工具3.配置SFTP远程访问4.固定远程连接地址 前言 本次教程我们将在OpenWRT上安装SFTP服务,并结合cpolar内网穿透,创建安全隧道映射22端口,实现在公网环境下远程OpenWRT SFTP&#xf…

Python之函数进阶-函数执行原理

Python之函数进阶-函数执行原理 函数执行流程 C语言中,函数的活动和栈有关。栈是后进先出的数据结构。栈是由底端向顶端生长,栈顶加入数据成为压栈、入栈、栈顶弹出数据称为出栈。 def add(x, y):r x yprint(r)return rdef main():a 1r add(a, 2)r…

ubuntu上如何移植thttpd

thttpd的特点 thttpd 是一个简单、小巧、便携、快速且安全的 HTTP 服务器。 简单: 它只处理实现 HTTP/1.1 所需的最低限度。好吧,也许比最低限度多一点。 小: 请参阅比较图表。它还具有非常小的运行时大小,因为它不会分叉并且非…

牛客网刷题笔记131111 Python实现LRU+二叉树先中后序打印+SQL并列排序

从学校步入职场一年多,已经很久没刷过题了,为后续稍微做些提前的准备,还是重新开始刷刷题。 从未做过计划表,这回倒是做了个计划表,希望能坚持吧。 刷题比较随性且量级不大,今天就写了2个算法2个sql&#x…

无需公网IP,贝锐花生壳内网穿透远程访问NAS

群晖DSM 7.0及以上版本 1.1 安装运行花生壳套件 (1)通过浏览器输入群晖NAS的内网地址,登录进去后,点击【套件中心】,搜索【花生壳】,并点击【安装套件】; (2) 勾选我接…

Jvm虚拟机

问题: 计算机能识别的语言是二进制,Java文件是程序员编写的,如何能够在计算机上运行? 以及Java为什么可以实现跨平台? 一Java的jdk中有jvm虚拟机 可以将文件转换为字节码文件 使得它可以在各种平台上运行,这…

Openlayers:自定义Controls

Openlayers是一款优秀的二维开源地图框架,支持矢量/栅格图层,支持移动端,并且易于自定义和拓展。下面来讲述一下自定义Control的基本思路。 openlayers-features 问题描述 最近在做个人项目时,遇到了一个小问题,就是在地图中心添加一个十字针形状的符号,用来表示地图中心…

Java入门篇 之 补 类与对象

本篇碎碎念:每个人的想法都不一样,不要强求,顺其自然,要相信,一切都在向好的方面前进!!!! 今日份励志文案:山海的浩瀚,宇宙的浪漫,都在我内心翻腾…

LeetCode200.岛屿数量

看完题目我还感觉这道题目有点难,没想到20分钟不到就完全靠自己给写出来了。我就是按照自己的想法来,我用一个等大的visit数组来表示grid数组中的这个元素是否被访问过(是否已经被判断了是不是岛屿)。 先用一个大的循环对grid数组…

贝锐蒲公英X1解决远程访问NAS难题

由于经常在外出差和旅游,需要实现即使在外地也能远程登录回去家里的NAS去处理事情或传输文件,因此解决方案之一是搭建一个安全简易的个人私有云。 实施难度 (1)家庭网络无公网IP,且公网IP价格昂贵(2&…

Django的ORM操作

文章目录 1.ORM操作1.1 表结构1.1.1 常见字段和参数1.1.2 表关系 2.ORM2.1 基本操作2.2 连接数据库2.3 基础增删改查2.3.1 增加2.3.2 查找2.3.4 删除2.3.4 修改 1.ORM操作 orm,关系对象映射,本质翻译的。 1.1 表结构 实现:创建表、修改表、…

Python用requests库采集充电桩LBS位置经纬度信息

这是一个使用Python的requests库来爬取网页内容的示例。首先,我们需要导入requests库。然后,我们需要定义一个函数来处理请求。在这个函数中,我们需要设置爬虫IP服务器的URL和端口号,然后使用requests.get来获取网页内容。最后&am…