数据库架构师之道:MySQL安装与系统整合指南

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
云数据库 RDS MySQL Serverless,价值2615元额度,1个月
简介: 数据库架构师之道:MySQL安装与系统整合指南



MySQL数据库安装(centos)

版本选择

企业版

MySQL企业版由MySQL AB公司内部专门的人员负责开发及维护,但同时也会吸纳社区人员编写的优秀代码及算法,并且由他们严格按照软件测试流程对这些采纳的代码进行测试,确定没有问题之后才会进行发布。简单地说,MySQL企业版是由MySQL公司内部发布的,它参考了社区版的先进代码功能和算法,是MySQL公司的赢利产品,需要付费才能使用及提供服务支持,稳定性和可靠性无疑都是最好的,当然了,企业腰包得够鼓才能买得起。某知名分类门户网站2008年就购买过MySQL企业版,价格不比那些闭源的商业数据库便宜,也是大几十万。

社区版

MySQL社区版则是由分散在世界各地的MySQL开发者、爱好者以及用户参与开发与测试的,包括软件代码的管理、测试工作,也是他们在负责。社区也会设立BUG汇报机制,收集用户在使用过程中遇到的BUG情况,相比于企业版,社区版的开发及测试环境没有那么严格。

选哪个

mysql是成熟产品,企业版和社区版在性能方面区别不大,对于我们学习而言,社区版即可。

它们的区别可以如下了解

  • 企业版对代码的管理、测试更严格、稳定性更好。
  • 企业版不遵循GPL开源协议,而社区版遵循,可以免费用.。
  • 企业版可以购买额外的收费服务,如7*24的技术支持,有钱任性。
  • 社区版的安全性,稳定性,无法像企业版有及时的维护、技术支持。

MySQL特点

支持多种操作系统,Windows、MacOS、Lnux等支持多种语言API,如C、C++、Pvthon、PHP、Java等

支持多线程、充分利用硬件资源 支持多种存储引擎

mysql就是一个基于socket编写的C/S架构的软件

客户端软件 自带:如mysql命令,mysqldump命令等 python模块:如pymysqlmysql

MySQL服务端-客户端

先看下什么是B/S和C/S架构。

B/S是Browser/Server指浏览器和服务器端,在客户机不需要装软件,只需要装一个浏览器。

C/S是Client/Server指客户端和服务器,在客户机端必须装客户端软件及相应环境后,才能访问服务器。

MySQL是基于客户端-服务端的运行模式数据库,服务端 负责数据处理,运行在数据库服务器上。

用户通过发送增删改查等请求,发送给 客户端软件,然后通过网络提交请求给 服务端 ,服务端接收到请求,再进行处理,然后返回。

服务端、客户端可以在不同的机器上,也可以在一台机器上。

这种服务端,客户端,就在生活里很常见,如打游戏时的登录,QQ、微信的登录,MySQL也是一个登录的过程。

mysql下载选择

了解数据库后,我们可以下载mysql软件了

MySQL :: Download MySQL Community Server (Archived Versions)

我们等会需要用的是这个安装包:

https://cdn.mysql.com//archives/mysql-5.6/mysql-5.6.40.tar.gz

软件包解释

mysql-5.6.45.tar.gz


5 是主版本号

6 是发行级别,主版本号和发行级别组合,构成发行序列号

45 表示在此发行系列的一个版本,随着新版本发布,进行递增


例如

mysq1-5.6.46.tar.gz

mysql-5.6.47.tar.gz

每次更新后,最后一个数字会递增

如果功能变化较大,字符串的第二个数字会递增,也就是如5.7

如果软件格式大改动,第一个数字,主版本号会变化

企业生产场景下,数据库是重中之重,因此选择MySQL数据库一定要慎重。

下面是给出的一些选择建议。

1)一定要选稳定版版本,即择开源的社区版的稳定版。


2)产品线选择,建议选择第二条产品线中的5.5或5.6版本。目前互联网公司

主流版本是5.5和5.6。


3)选择MySQL数据库至少发布半年以上的稳定版本。


4)要尽可能选择前后几个月没有大的BUG修复的版本,而不是大量修复BUG的集中版本。


5)最好选择向后较长时间没有更新发布的版本。


6)要考虑开发人员开发程序使用的版本是否兼容你所选的版本。


7)首先作为内部开发测试数据库环境,测试运行几个月的时间。


8)优先对企业非核心业务采用新的数据库稳定版本软件。

安装MySQL的方式

方式有哪些

rpm包安装

rpm安装必须要提前准备好官网、第三方源提供好的rpm软件包,且无法满足定制化需求、编译参数、修改路径、依赖冲突问题,所以不建议使用。

yum方式安装

这是最方便的,yum自动去源中下载相关rpm包

yum install mariadb-server mariadb -y
systemctl start mariadb

源码编译安装★

源代码编译三部曲

1.获取mysql代码源码包,解压缩,源码目录下有一个makefile

2.进入mysql的源码目录下,执行make指令,自动读取makefile

3.在make编译完成之后,执行make install,安装mysql到指定位置

具体的编译安装步骤★★
环境准备
  • Vmware,设置内存大于等于4G,linux的配置,cpu也至少给2核以上
free -m命令
[root@srlua001 opt]# free -m

cat /proc/cpuinfom命令
[root@srlua001 opt]# cat /proc/cpuinfo

processor 0 - 3 说明有4个cpu

top命令
[root@srlua001 opt]# top

执行后按1,查看cpu

  • 编译安装过程中,不得出现error关键字
cat /etc/redhat-release命令

查看操作系统版本

[root@srlua001 opt]# cat /etc/redhat-release
CentOS Linux release 7.9.2009 (Core)
编译前的依赖安装
#安装命令
[root@srlua001 opt]#yum install ncurses-devel libaio-devel gcc make cmake -y

创建mysq1用户,用于授权目录

获取mysql的源代码

下载链接:

https://cdn.mysql.com//archives/mysql-5.6/mysql-5.6.40.tar.gz

使用wget命令下载

wget  https://cdn.mysql.com//archives/mysql-5.6/mysql-5.6.40.tar.gz

如果没有wget命令,则先下载wget

yum install wget

解压缩,安装mysql
[root@srlua001 tools]# tar -zxvf mysql-5.6.40.tar.gz

cd 进入mysql-5.6.40

执行cmake,生成makefile,用于编译安装
cmake . -DCMAKE_INSTALL_PREFIX=/application/mysql-5.6.40 \
-DMYSOL_DATADIR=/application/mysql-5.6.40/data \
-DMYSQL_UNIX_ADDR=/application/mysql-5.6.40/tmp/mysql.sock \
-DDEFAULT_CHARSET=utf8 \
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DWITH_FEDERATED_STORAGE_ENGINE=1 \
-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
-DWITHOUT_EXAMPLE_STORAGE_ENGINE=1 \
-DWITH_ZLIB=bundled \
-DWITH_SSL=bundled \
-DENABLED_LOCAL_INFILE=1 \
-DWITH_EMBEDDED_SERVER=1 \
-DENABLE_DOWNLOADS=1 \
-DWITH_DEBUG=0

cmake编译参数设置完毕之后,就会自动生成makefile,可以执行

make

make install

make安装
[root@srlua001 tools]#make

下载至100%

[root@srlua001 tools]#make && make install

当cmake,make,make install 成功的依次执行完毕后,看到如下内容,才表明正确

验证mysql的安装

能执行如下操作就算是安装成功结束了!!

创建软链接

mysql数据初始化操作

执行如下初始化命令

[root@srlua001 mysql-5.6.40]# /application/mysql/scripts/mysql_install_db --basedir=/application/mysql/ --datadir=/application/mysql/data --user=mysql

以及看到如下的数据目录,表示mysql初始化正确

vim安装

yum install vim -y

net-tools安装

yum install net-tools -y

准备启动mysql

就得配置mysql的启动脚本

使用mysql初始化自动生成的管理脚本

准备启动mysql

提前准备好mysql的配置文件 my.cnf

启动前准备

在/application/mysql下创建tmp文件夹

1.默认情况下会出现这种错误

2.发现这里还是没有启动成功,是因为权限的问题

避免权限问题,把我们所有目录与子目录的属主与属组换成mysql

[root@srlua001 mysql]# chown -R mysql.mysql /application/mysql/

启动成功!

验证启动

[root@srlua001 mysql]# netstat  -tunlp|grep mysql

登录mysql据库

属于mysql服务端mysql-server已经正确启动了

就得用客户端去连接mysql,进行数据的增删改查

使用mysql命令连接

mysql -uroot -p

bash没找到mysql -uroot -p命令是因为环境变量里没有,所有我们要去把mysql路径写入PATH中

使路径生效

source /etc/profile

由于没有设置密码,不安全

mysql安全配置

希望对你有帮助!加油!

若您认为本文内容有益,请不吝赐予赞同并订阅,以便持续接收有价值的信息。衷心感谢您的关注和支持!

相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
3天前
|
项目管理 数据库
基于jeecg-boot的项目管理系统(一、部分数据库)
基于jeecg-boot的项目管理系统(一、部分数据库)
|
3天前
|
SQL 关系型数据库 数据库
关系型数据库选择合适的数据库管理系统
关系型数据库选择合适的数据库管理系统
9 2
|
4天前
|
关系型数据库 MySQL BI
关系型数据库选择合适的数据库管理系统
关系型数据库选择合适的数据库管理系统
16 4
|
2天前
|
关系型数据库 MySQL 数据库
mysqlTools 一分钟部署安装本mysql多个版本,解锁繁琐部署过程
mysqlTools 一分钟部署安装本mysql多个版本,解锁繁琐部署过程
57 2
|
3天前
|
关系型数据库 MySQL 数据库连接
用Navicat备份Mysql演示系统数据库的时候出:Too Many Connections
用Navicat备份Mysql演示系统数据库的时候出:Too Many Connections
|
3天前
|
关系型数据库 MySQL Linux
本地虚拟机centos7通过docker安装主从mysql5.7.21
本地虚拟机centos7通过docker安装主从mysql5.7.21
10 0
|
3天前
|
SQL canal 运维
MySQL高可用架构探秘:主从复制剖析、切换策略、延迟优化与架构选型
MySQL高可用架构探秘:主从复制剖析、切换策略、延迟优化与架构选型
|
4天前
|
前端开发 Java 关系型数据库
Java医院绩效考核系统源码B/S架构+springboot三级公立医院绩效考核系统源码 医院综合绩效核算系统源码
作为医院用综合绩效核算系统,系统需要和his系统进行对接,按照设定周期,从his系统获取医院科室和医生、护士、其他人员工作量,对没有录入信息化系统的工作量,绩效考核系统设有手工录入功能(可以批量导入),对获取的数据系统按照设定的公式进行汇算,且设置审核机制,可以退回修正,系统功能强大,完全模拟医院实际绩效核算过程,且每步核算都可以进行调整和参数设置,能适应医院多种绩效核算方式。
23 2
|
4天前
|
关系型数据库 MySQL 数据库
龙蜥操作系统上安装MySQL:步骤详解与常见问题解决
龙蜥操作系统上安装MySQL:步骤详解与常见问题解决
|
4天前
|
关系型数据库 MySQL Linux
在Centos7中:通过Docker安装MySQL5.7(保姆级)
在Centos7中:通过Docker安装MySQL5.7(保姆级)

推荐镜像

更多