在虚拟机安装MySQL详解

MySQL是一种关系型数据库,原本是瑞典的公司叫MySqlAB公司,后被Oracle收购

DB:database,数据库,里边保存了有组织的规范的数据

DBMS:database management system ,数据库管理系统,简称数据库软件,数据库产品,数据库是通过DBMS创建和操作的容器

SQL:结构化查询语言(Structure Query Language),专门用来与数据库通信的语言


SQL的优点:

1.不是特定的数据库供应商专有的语言,几乎所有DBMS都支持

2.简单易学

3.实际是可以进行非常复杂和高级的数据库操作


数据库特点:

1.将数据放到数据表格(二维表)中,在将表格放到库中

2.一个数据库中可以有多张表,每个表都有一个名字,用来标识自己,表名必须唯一

3.表具有一些特性,这些特性规范了数据在表中的存储格式

4.表由列构成,每列我们叫一个字段,所有表都是由一个或多个字段(列)构成

5.表中数据是按照行来存储的。


MySQL优点:

-成本低:开源代码,一般可以免费试用

-性能高:执行很快

-简单:很容易安装和使用


DBMS分为两类:

-基于共享文件系统的DBMS(Access)

-基于客户机-服务器架构的DBMS(MySql,Oracle,SqlServer)


MySQL提供两个版本:

-社区版(免费)

-企业版(收费)


当我们拿到一台刚装好的虚拟机,首先是对其进行基础配置(主机名,ip),也可以省略。

hostnamectl set-hostname mysql
nmcli connection modify ens160 ipv4.addresses 192.168.136.128/24
nmcli connection modify ens160 ipv4.gateway 192.168.136.2
nmcli connection modify ens160 ipv4.dns 114.114.114.114
nmcli connection modify ens160 ipv4.method manual
nmcli connection modify ens160 connection.autoconnect yes
nmcli connection up ens160

安装方式

  • 安装方式一:仓库安装
  • 安装方式二:离线安装
  • 安装方式三:容器安装
  • 安装方式四:源码安装
安装方式一:仓库安装

首先是下载MySQL的仓库,可以在官网下载,也可以使用国内源

https://repo.mysql.com//mysql80-community-release-el8-1.noarch.rpm  #官网
https://mirrors.tuna.tsinghua.edu.cn/mysql/yum/mysql-8.0-community-el8-x86_64/  #国内源

这里使用的是官网的,可以看到已经成功下载仓库

[root@mysql ~]# rpm -i https://repo.mysql.com//mysql80-community-release-el8-1.noarch.rpm
[root@mysql ~]# ll /etc/yum.repos.d/
-rw-r--r--. 1 root root  995 Oct  4  2019 mysql-community.repo
-rw-r--r--. 1 root root 1050 Oct  4  2019 mysql-community-source.repo

然后安装,出现complete表示安装成功

[root@mysql ~]# yum install mysql-server -y

然后启动服务,这里是空密码,直接回车就能登陆

[root@mysql mysql]# systemctl start mysqld
[root@mysql mysql]# mysql -uroot -p

进入数据库后也能show databases;

安装方式二:离线安装

因为之前已经用仓库安装了,所以在进行离线安装的时候要先卸载并清理相关文件

[root@mysql ~]# find / -name mysql
[root@mysql ~]# yum remove mysql-server -y
[root@mysql ~]# rm -rf /var/log/mysql/

然后去官网选择对应的版本下载MySQL :: Download MySQL Community Server

成功下载后,将它传到主机上,这里已经成功上传

[root@mysql ~]# ll /
-rw-r--r--.   1 root root 777615360 Aug 13 17:23 mysql-8.0.26-1.el8.x86_64.rpm-bundle.tar

然后解压

[root@mysql ~]# mkdir /mysql
[root@mysql ~]# mv /mysql-8.0.26-1.el8.x86_64.rpm-bundle.tar /mysql
[root@mysql ~]# cd /mysql/
[root@mysql mysql]# tar xvf mysql-8.0.26-1.el8.x86_64.rpm-bundle.tar

本地安装,相对来说比较麻烦

[root@mysql mysql]# yum localinstall mysql-community-server-8.0.26-1.el8.x86_64.rpm
[root@mysql mysql]# yum localinstall mysql-community-client-8.0.26-1.el8.x86_64.rpm
[root@mysql mysql]# yum localinstall mysql-community-client-plugins-8.0.26-1.el8.x86_64.rpm
[root@mysql mysql]# yum localinstall mysql-community-libs-8.0.26-1.el8.x86_64.rpm
[root@mysql mysql]# yum localinstall mysql-community-common-8.0.26-1.el8.x86_64.rpm

然后启动服务,因为是离线安装,就会生成临时密码

[root@mysql mysql]# systemctl start mysqld
[root@mysql mysql]# grep password /var/log/mysqld.log
[root@mysql mysql]# mysql -uroot -p
#输入临时密码就能成功登录

但是这里就不能成功show databases;必须要先修改密码

mysql> show databases;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
安装方式三:容器安装

同样还是先移除MySQL及相关文件

[root@mysql mysql]# yum remove mysql-server -y
[root@mysql mysql]# find / -name mysql
[root@mysql mysql]# rm -rf /var/lib/mysql/
[root@mysql mysql]# rm -rf /usr/lib64/mysql/
[root@mysql mysql]# rm -rf /usr/bin/mysql

然后要配置本地仓库

[root@mysql ~]# cd /etc/yum.repos.d/
[root@mysql yum.repos.d]# vim base.repo
[appstream]
name=appstream
baseurl=file:///mnt/AppStream
enable=1
gpgcheck=0
[baseos]
name=baseos
baseurl=file:///mnt/BaseOS
enable=1
gpgcheck=0

安装依赖包

[root@mysql yum.repos.d]# mount /dev/sr0 /mnt
mount: /mnt: WARNING: device write-protected, mounted read-only.
[root@mysql yum.repos.d]# yum install -y yum-utils device-mapper-persistent-data lvm2

再下载官方仓库

[root@mysql yum.repos.d]# wget -O /etc/yum.repos.d/docker-ce.repo https://download.docker.com/linux/centos/docker-ce.repo
[root@mysql yum.repos.d]# ll
-rw-r--r--. 1 root root 1919 Aug 10 22:55 docker-ce.repo

安装docker

[root@mysql yum.repos.d]# yum install -y docker-ce
#如果安装出现问题,就执行yum remove podman runc再执行安装

启动服务

[root@mysql ~]# systemctl start docker

搜索镜像

[root@mysql ~]# docker search mysql
NAME                              DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
mysql                             MySQL is a widely used, open-source relation…   11263

拉取镜像

[root@mysql ~]# docker pull mysql

查看拉取到的镜像

[root@mysql ~]# docker images
REPOSITORY   TAG       IMAGE ID       CREATED       SIZE
mysql        latest    c60d96bd2b77   3 weeks ago   514MB

运行镜像

[root@mysql ~]# docker run --name mysqltest -e MYSQL_ROOT_PASSWORD=123456 -d mysql

查看容器及端口

[root@mysql ~]# docker ps

附加到容器并成功登录数据库(密码123456)

[root@mysql ~]# docker exec -it mysqltest /bin/bash
root@08cf4f5e291b:/# mysql -uroot -p

也能成功show databases;

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+

如果要停掉容器就执行stop,再查看停掉的容器

[root@mysql ~]# docker stop mysqltest
[root@mysql ~]# docker ps -a

如果要删除容器就执行以下操作

[root@mysql ~]# docker container prune
安装方式四:源码安装

先去官网下载源码包https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-boost-8.0.26.tar.gz,上传到主机或者直接在主机上下载,并解压缩

[root@mysql ~]# wget https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-boost-8.0.26.tar.gz
[root@mysql ~]# tar xf mysql-boost-8.0.26.tar.gz -C /usr/local/src/

然后安装编译环境工具

[root@mysql ~]# yum install -y openssl-devel cmake make gcc gcc-c++ ncurses gcc-toolset-10

添加组和用户

[root@mysql ~]# groupadd mysql
[root@mysql ~]# useradd -r -g mysql -s /bin/false mysql

编译配置

[root@mysql ~]# cd /usr/local/src/mysql-8.0.26/
[root@mysql mysql-8.0.26]# mkdir bld
[root@mysql mysql-8.0.26]# cd bld/
[root@mysql bld]# cmake ..

在编译的过程中会报错,可根据错误提示继续安装相应的包

提示:如果出现-- Could not find (the correct version of) boost.
– MySQL currently requires boost_1_73_0

执行以下操作:

[root@mysql bld]# cmake .. -DWITH_BOOST=../boost/boost_1_73_0/

还有一个rpcgen需要我们自己下载

链接:https://pan.baidu.com/s/19pJx8FRswJWHJ36YwBFEBA 提取码:9i93

[root@mysql /]rpm -i rpcgen-1.3.1-4.el8.x86_64.rpm

如果编译配置失败,就清理环境

make clean
rm CMakeCache.txt

编译执行

[root@mysql bld]# time make

安装

[root@mysql bld]# make install

完成后需要做的

[root@mysql bld]# cd /usr/local/mysql/
[root@mysql mysql]# mkdir mysql-files
[root@mysql mysql]# chown mysql:mysql mysql-files/
[root@mysql mysql]# chmod 750 mysql-files/
[root@mysql mysql]# bin/mysqld --initialize --user=mysql
bin/mysql_ssl_rsa_setup
bin/mysqld_safe --user=mysql &
cp support-files/mysql.server /etc/init.d/mysql.server
需要开机启动:
vim /etc/rc.d/rc.local
service mysql start
需要环境变量:
vim /root/.bash_profile
PATH=$PATH:/usr/local/mysql/bin

在虚拟机安装MySQL详解相关推荐

  1. OpenVZ虚拟机安装过程详解

    转自:OpenVZ虚拟机安装过程详解 鼎鼎大名的 OpenVZ 谁不知道?在主机行业被使用(滥用)很多年,依然在茁壮发展.作为一种操作系统级别的虚拟化技术,运行 OpenVZ 没有硬性的硬件要求.Op ...

  2. centos6 安装 mantisbt-1.2.8 —— (1) VMware Workstation 12 Pro 虚拟机安装步骤详解(window 10 系统)

    对于目前主流之一的VMware 虚拟机而言,一直是各位小伙伴的首选,而VMware 12 Pro 是截止目前最新的VMware Workstation 版本:偶在这里特地给刚刚入坑的小伙伴详细介绍介绍 ...

  3. mysql router docker_Docker 安装 Mysql 详解

    本文将以完整的安装 MySQL 为例将 镜像与 容器 操作完全串联起来 环境说明 系统为 CentOS 7.5 发行版,内核为 3.10 版本,Docker 为 1.13 版本 [root@local ...

  4. CentOS安装MySQL详解

    原文作者:tianranll 原文链接:https://juejin.im/post/5d07cf13f265da1bd522cfb6 引言 最近某云搞活动,买了个服务器作为平时学习和测试用,新机器啥 ...

  5. 【数据库】Ubuntu18.04安装MySQL详解

    00. 目录 文章目录 00. 目录 01. 安装MySQL 02. 配置MySQL 03. 查看MySQL状态 04. 配置远程访问MySQL 05. 问题分析 06. 附录 01. 安装MySQL ...

  6. 如何在linux下yum安装mysql_linux下使用yum安装mysql详解

    1.安装客户端和服务器端 确认mysql是否已安装: yum list installed mysql* rpm -qa | grep mysql*查看是否有安装包: yum list mysql*安 ...

  7. Linux安装mySql详解

    前置: (1)防火墙关闭     service iptables stop      chkconfig iptables off:开机不启动防火墙 (2)关闭selinux 安装Mysql (1) ...

  8. CentOS 7虚拟机安装Oracle11g详解

    一.安装Oracle前准备 1.创建运行oracle数据库的系统用户和用户组 [sonny@localhost~]$ su root #切换到root Password: [root@localhos ...

  9. 虚拟机安装Ubuntu详解

    安装Ubuntu Ubuntu简介 以桌面应用为主的Linux操作系统 Ubuntu是LInux的一个发行版本,特点是具有丰富的应用资源以及庞大的社区力量. Ubuntu版本 根据Ubuntu发行版本 ...

最新文章

  1. 情绪调节的自适应_心理健康系列 | 大学生常见情绪问题及调试方法
  2. RepVGG算法详解
  3. Linux Centos安装步骤
  4. 下载python教程-python教程pdf下载
  5. Flask模板操作一:基本使用
  6. 【数字信号处理】基于matlab数字信号同步压缩变换【含Matlab源码 1535期】
  7. 5G简介【华为ICT学堂】笔记
  8. MobaXterm连接局域网的虚拟机
  9. Android应用自启动保活手段与安全现状分析
  10. Windows RC版、RTM版、OEM版、RTL版、VOL版的区别
  11. 常用的一些javascript小技巧 大全
  12. Python编程之numpy库函数in1d的使用
  13. 904-线程池项目死锁问题分析
  14. 外国程序员应该访问的最佳网站
  15. win10不让桌面上显示宽带连接服务器,win10系统宽带连接放在桌面的操作方法
  16. linux检查是否安装了rzsz,linux安装rzsz(lrzsz)
  17. 人工神经网络英文简称为,人工神经网络英文缩写
  18. 05-docker高级网络配置和数据卷配置
  19. Anylink 安装教程 及 客户端之间互联
  20. java在线客服_java 网站用户在线和客服聊天

热门文章

  1. C语言和我的世界指令哪个难,我的世界:这些指令你都不知道还敢说自己是老司机?...
  2. Ubuntu安装JDK11
  3. 读论文-MHFormer
  4. ASP Content Rotator之简介
  5. C语言 select函数使用
  6. 怎么把QQ我的收藏表情图片转移到另一台电脑上
  7. 常用js库和框架(jsPlumb)
  8. Python练习:定义函数countchar(str)按字母表顺序统计字符串中所有出现的字母个数(允许输入大小写,不区分大小写)
  9. 多角度理解sigmoid,relu和tanh激活函数
  10. 求两个List的交集和并集