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

目录

MySQL数据库安装(centos)

版本选择

企业版

社区版

选哪个

MySQL特点

MySQL服务端-客户端

mysql下载选择

软件包解释

安装MySQL的方式

rpm包安装

yum方式安装

源码编译安装★

具体的编译安装步骤★★

环境准备

free -m命令

cat /proc/cpuinfom命令

top命令

cat /etc/redhat-release命令

编译前的依赖安装

获取mysql的源代码

解压缩,安装mysql

执行cmake,生成makefile,用于编译安装

make安装

验证mysql的安装

创建软链接

mysql数据初始化操作

vim安装

net-tools安装

准备启动mysql

启动前准备

启动成功!

验证启动

登录mysql据库

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 -ysystemctl 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安全配置

希望对你有帮助!加油!

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

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

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

相关文章

OpenAI超级视频模型Sora登上央视,LeCun强推的「世界模型」雏形相继诞生,AGI如何能够以人类的理解方式看世界?

OpenAI超级视频模型Sora热度不减 Sora一经面世,瞬间成为顶流,话题热度只增不减,一度登上央视新闻报道。 强大的逼真视频生成能力,让许多人纷纷惊呼「现实不存在了」。 OpenAI官方技术报告 OpenAI官方Sora技术报告:V…

JMeter 配置元件之按条件读取CSV Data Set Config

实践环境 win10 JMeter 5.4.1 需求描述 需求是这样的,需要压测某个接口(取消分配接口),请求这个接口之前,需要先登录系统(物流WMS系统),并在登录后,选择并进入需要操作的仓库,然后请求接口,…

我的NPI项目之Android Camera (二) -- 核心部件之 Camera Sensor

说到Camera模组,我们比较关心的是用的什么样的sensor? sensor的分辨率多少,sensor的像素多大,sensor是哪家生产的等等一些问题。今天,我们就穿越时间,将sensor的历史扒一扒。 Wikipedia先看一下&#xff1…

MOSFET栅极应用电路分析汇总(驱动、加速、保护、自举等等)

概述 MOSFET是一种常见的电压型控制器件,具有开关速度快、高频性能、输入阻抗高、噪声小、驱动功率小、动态范围大、安全工作区域(SOA)宽等一系列的优点,因此被广泛的应用于开关电源、电机控制、电动工具等各行各业。栅极做为MOSFET本身较薄弱的环节&am…

【C++11新特性】详解智能指针 创建、使用、注意事项

创作不易&#xff0c;本篇文章如果帮助到了你&#xff0c;还请点赞 关注支持一下♡>&#x16966;<)!! 主页专栏有更多知识&#xff0c;如有疑问欢迎大家指正讨论&#xff0c;共同进步&#xff01; &#x1f525;c系列专栏&#xff1a;C/C零基础到精通 &#x1f525; 给大…

小白如何学鸿蒙开发?

在互联网技术不断发展的现在&#xff0c;鸿蒙操作系统的出现标志着是能技术领域的一次重大突破&#xff0c;鸿蒙作为华为推出的一代操作系统&#xff0c;鸿蒙不仅达代表了自主创新的力量&#xff0c;还因为独特的分布式架构和全场景适配能力而备受关注。随着鸿蒙生态的不断完善…

测试架构师必备技能 —— Nginx安装部署实战

Nginx("engine x")是一款是由俄罗斯的程序设计师Igor Sysoev所开发高性能的免费开源Web和 反向代理服务器&#xff0c;也是一个 IMAP/POP3/SMTP 代理服务器。在高并发访问的情况下&#xff0c;Nginx是Apache服务器不错的替代品。官网数据显示每秒TPS高达50W左右。本文…

左旋字符串解析

题目 实现一个函数&#xff0c;可以左旋字符串中的k个字符。 例如&#xff1a; ABCD左旋一个字符得到BCDA ABCD左旋两个字符得到CDAB 法1&#xff1a;一个个移动 #include<stdio.h> #include<string.h>//把一个字符串s,左移time个字符 void leftRound(char* s…

leetcode日记(26)有效的数独

用暴力解法解出来的&#xff0c;判断3*3那要写的比较多&#xff0c;判断竖列那花了点功夫。 不知道有没有更好的解法。 class Solution { public:bool isValidSudoku(vector<vector<char>>& board) {for(int i0;i<9;i){vector<char>cboard[i];for(i…

[Docker实战] 旭日X3派上Docker Openwrt +Samba 实现局域网NAS 开启AP模式

​ &#x1f308; 博客个人主页&#xff1a;Chris在Coding &#x1f3a5; 本文所属专栏&#xff1a;[旭日X3派] [Docker实战] ❤️ 前置学习专栏&#xff1a;[Linux学习] ⏰ 我们仍在旅途 …

创建补丁文件.patch

前言 在linux中&#xff0c;在工程实践中。 自己基于文件1进行了修改&#xff0c;得到文件2&#xff0c;文件1有线上仓库。时常会遇到以下两种情景&#xff1a; 由于文件过大&#xff0c;直接向组员分享文件2很麻烦。由于修改地方过多&#xff0c;每次更换环境都需要重新修改文…

【JAVA语言-第18话】集合框架(五)——Map、HashMap、LinkedHashMap、TreeMap集合

目录 双列集合Map 1.1 概述 1.2 特点 1.3 Map接口中的常用方法 1.3.1 练习 1.4 HashMap集合 1.4.1 概述 1.4.2 特点 1.5 LinkedHashMap集合 1.5.1 概述 1.5.2 特点 1.6 TreeMap集合 1.6.1 概述 1.6.2 特点 1.7 Map集合练习 1.8 HashMap、LinkedHashMap、Tre…

【EI会议征稿通知】第五届城市工程与管理科学国际会议(ICUEMS 2024)

【Scopus稳定检索】第五届城市工程与管理科学国际会议&#xff08;ICUEMS 2024&#xff09; 2024 5th International Conference on Urban Engineering and Management Science 第五届城市工程与管理科学国际会议&#xff08;ICUEMS 2024&#xff09;将于2024年5月31日-6月2日…

GitKraken Create Repository and Clone不可点击

问题 GitKraken Create Repository and Clone不可点击 详细问题 笔者第一次使用GitKraken&#xff0c;在创建仓库时&#xff0c;填写完成仓库初始化后。发现Create Repository and Clone不可点击。 解决方案 选择Where to clone to位置 产生原因 在创建仓库时&#xff0…

洛谷: P1479 宿舍里的故事之五子棋

题目链接: https://www.luogu.com.cn/problem/P1479 思路: 这道题目可以打表或者搜索。每个位置有选择/不选择两种情况。搜索的时候我们一行一行的搜索&#xff0c;直到使用的棋子达到n为止。b[i]为五子连线的数量&#xff0c;b[i] 1表示五子连线的数量可以取i&#xff0c;在…

day6:继承与多态

思维导图 2.编程题&#xff1a; 以下是一个简单的比喻&#xff0c;将多态概念与生活中的实际情况相联系&#xff1a;比喻&#xff1a;动物园的讲解员和动物表演 想象一下你去了一家动物园&#xff0c;看到了许多不同种类的动物&#xff0c;如狮子、大象、猴子等。现在&#xff…

如何引导llm为自己写prompt生成剧本

如何使用写prompt让你自己生一个狗血修仙穿越短剧&#xff0c;且短剧有趣生动让人流连忘返 好的&#xff0c;我会尝试编写一个狗血修仙穿越短剧的prompt&#xff0c;以激发你的想象力&#xff0c;让你创作出一个既有趣又生动的短剧。以下是我的prompt&#xff1a; 标题&#x…

简洁高效的短链接:优化互联网体验

title: 简洁高效的短链接&#xff1a;优化互联网体验 date: 2024/2/18 13:24:24 updated: 2024/2/18 13:24:24 tags: 短链接长网址缩短美观简洁分享优化点击率提升数据统计用户体验 在互联网时代&#xff0c;我们经常遇到需要分享长网址的情况。长网址不仅不美观&#xff0c;而…

Mysql开启bin-log日志

目录 一、安装配置 二、mysqlbinlog命令 一、安装配置 yum -y install mariadb mariadb-server#安装mysql数据库#默认配置文件/etc/my.cnfvim /etc/my.cnflog-binmariadb-bin #开启二进制日志 systemctl restart mariadb#会在/car/lib/mysql/产生二进制日志文件&#xff0…

防火墙(三) -----------------关于iptables规则的保存

一、关于iptables规则的保存 之前写的iptables的设置&#xff0c;但是都是临时生效的&#xff0c;一旦电脑重启&#xff0c;那么就会失效&#xff0c;如何永久保存&#xff0c;需要借助iptables-save命令&#xff0c;开机生效需要借助iptables-restore命令&#xff0c;并写入规…