分类
game

up对战平台安装.

https://www.reckfeng.com/ 官方链接下载客户端.

安装魔兽争霸客户端.需要先下载.如果你之前魔兽争霸对战平台没有卸载.可以不卸载.用他的的魔兽争霸程序.

https://tieba.baidu.com/p/8236674017?pid=146709041698&cid=#146709047736l

帖子里面有微云下载地址

https://share.weiyun.com/LDtcR8Va

密码:

4f59g8

分类
读文

暴雪退款和魔兽争霸对战平台退款

https://www.163.com/dy/article/HSG1ALJL0552N3G0.html

网之易关于暴雪游戏产品运营到期开放退款的说明

https://dz.163.com/refund-announcement

魔兽争霸官方对战平台退款公告

致各位亲爱的暴雪游戏玩家:

在中国大陆地区由上海网之易网络科技发展有限公司所运营的《魔兽世界》《炉石传说》《守望先锋》《暗黑破坏神III》《魔兽争霸III:重制版》《风暴英雄》《星际争霸》系列产品(以下统称“暴雪游戏产品”),正式于2023年1月24日0时终止运营。

今日(2023年2月1日11时)起,针对玩家在“暴雪游戏产品”中已充值但未消耗的虚拟货币或未失效的游戏服务(下称“可退款商品”)开放退款申请通道。

以下是“可退款商品”的具体范围及退款标准:


“可退款商品”的具体范围及退款标准

特别说明

  • 礼包类商品若包含上述可退款商品,玩家可针对礼包中的可退款商品申请退款。
  • 通过赠与、奖励等免费方式获得的虚拟货币或游戏服务不在退款范围内。
  • 可退款的“时光徽章”仅限于通过现金或战网点直接购买的时光徽章,在游戏内使用金币购买的时光徽章不在退款范围内。
  • 存在安全隐患的账号(或子账号)将无法提交退款申请或通过退款审核。
  • 因退款需要,我们会留存您在退款申请中提交的各项信息,包括但不限于:身份信息(如姓名、账号ID等)、消费记录(如充值信息、支付信息、消费信息等),以及退款流程中的其他必要信息。待退款相关事宜处理完毕后,我们将按照法律法规的规定处理前述退款信息。

关于退款流程

1.提交退款申请的截止日期为2023年6月30日,未在截止日期前提交退款申请的玩家将被视为主动放弃相关权益。

2.玩家需前往“暴雪游戏服务中心”公众号提交退款申请,最终退款金额将以停运后玩家账号内实际剩余的可退款商品数量为准,且不会超过该账号可退款商品的历史累计付费金额。

3.为了保护玩家财产安全,玩家在申请退款时可能会需要配合进行身份验证。若玩家无法配合提供相关资料或提供的资料有误,或未能满足其他退款安全验证要求的,该笔退款申请将无法通过审核。退款安全验证的具体规则以退款申请页面为准。

4.在提交退款申请表单时,玩家需要选择拟申请退款的可退款商品。玩家可选择仅对某些品类的商品申请退款,但同一品类的可退款商品只能选择申请全额退款或不进行退款,无法将同一品类的可退款商品拆分后进行部分退款或部分保留。

5.每次可对一个品类的可退款商品提交申请,玩家可选择收款平台(支付宝或网易支付)并提供对应平台的收款账号,为提高退款的效率和有效性,建议玩家提供本人(注册或实名身份证号码一致)的收款账号。

6.退款申请提交后经审核通过即不可撤销,审核所需的时间将由退款数量、玩家账号状态及退款信息的准确性等实际情况决定。符合退款要求的金额将于通过审核后的15个工作日内退还至玩家的收款账号。玩家可以在“暴雪游戏服务中心”公众号查看退款状态。

如您在退款过程中有任何疑问,请与网易暴雪游戏客服联系。

我们对此次终止运营给您造成的不便深表歉意!我们十分感谢您的理解和原谅,也衷心期待您继续支持和关注!

上海网之易网络科技发展有限公司

2023年2月1日

分类
网络

NotionNext 安装配置

NotionNext | Notion笔记轻松搭建博客 2021-12-4| 2023-1-2919368本文字数4292 | 阅读时长 ≈11分钟

原文链接

https://tangly1024.com/article/notion-next#86b977c0f3ff44018886d3974bedc0a7

NotionNext是什么?

NotionNext是我开源在Github的、基于Nextjs的博客生成器,它将Notion笔记实时渲染成静态博客站,从而实现“笔记即网站”。

建站效果

最快只需几分钟的操作,您将获得一个还不错的样的博客站👇:

NotionNext-搭建博客
NotionNext-搭建博客

点击下方链接查看更多网友案例:留言板 | TANGLY’s BLOG本站文章是在我的Notion笔记本上编写、并实时同步在该博客。博客站点的搭建可参考 以下文章 ,只需几分钟的时间即可完全免费搭建。 欢迎在此页留言,或者直接留下你的站点地址,我会大家的站点收集起来,这样以便于互相窜门拜访😆。 我是 …https://tangly1024.com/about

为何使用NotionNext

1.Notion

Notion 是一款将笔记、在线文档、知识库和任务管理无缝整合的「All-In-One」应用。💡Notion也是我一直在用、并且极力推荐的一款笔记软件,关于Notion的介绍查看此文《Notion笔记 | 简化生活的效率工具》NotionNext中,编写与发布都只在您的笔记中完成。借助Notion强大的Block编辑和写作功能,您可以随时随地撰写文章、记录你的创意与灵感。相比于Hexo等类型的静态博客,您不需要学习Markdown语法,也无需每次写完文章都提交推送到Git仓库。

2.实用的功能

🚀 更快的速度

NotionNext是基于craigaryNobelium项目二次开发,继承了Nobelium功能特点,拥有极快的打开速度:

notion image

🎨 更多的主题

目前已支持5种主题NextHexoMediumFukasawaExample点击下方链接以预览主题NOTION BLOG | 演示站点描述演示站点描述https://preview.tangly1024.com/

🤟 更多功能

快速开始

遵循以下4步骤可快速部署您的站点。

1.Fork此Github项目

点击下方链接快速fork项目Build software better, togetherYou can’t perform that action at this time. You signed in with another tab or window. You signed out in another tab or window. Reload to refresh your session. Reload to refresh your session.https://github.com/tangly1024/NotionNext/fork💡Fork:意为将NotionNext源代码复制一份到您的Github账号中。

2.Vercel中导入您的Github项目

点击下方链接将Github代码导入到Vercel托管部署New Project – VercelTo deploy a new Project, import an existing Git Repository or get started with one of our Templates.https://vercel.com/new导入步骤说明 (点击展开截图详情)

1.使用Github账号登录Vercel
2.点击导入您的NotionNext项目

💡此步骤先不要点击Deploy部署,请阅读下方步骤3《绑定您的Notion页面》

notion image

3.绑定您的Notion页面

点击Environment Variables(环境变量),添加NOTION_PAGE_ID变量。

notion image

👉NOTION_PAGE_ID参数从何而来?

1.将下方模板复制到您的Notion笔记中:NOTION BLOG演示站点描述https://tanghh.notion.site/02ab3b8678004aa69e9e415905ef32a5?v=b7eb215720224ca5827bfaa5ef82cf2d

点击右上角的Duplicate,将模板复制到您的笔记中
点击右上角的Duplicate,将模板复制到您的笔记中

2.开启分享:点击 Share 开启 Share to web

notion image

3.在页面链接中取得PAGE_ID,一个32位的字符串链接中的标红加粗部分就是PAGE_ID⚠️https://www.notion.so/tanghh/02ab3b8678004aa69e9e415905ef32a5?v=b7eb215720224ca5827bfaa5ef82cf2d

点击Copy可以复制链接地址
点击Copy可以复制链接地址

4.完成

点击Deploy按钮,静候两分钟即可完成。完成后点击Go to Dashboard访问控制台,在控制台右上角的Visit按钮访问您的站点。

1.点击Deploy进行自动部署
1.点击Deploy进行自动部署
2.在Vercel控制台中找到访问地址
2.在Vercel控制台中找到访问地址

🎉🎉🎉 自此站点部署已经完成 🎉🎉🎉⚠️Notion笔记会自动实时保存笔记、NotionNext会自动实时抓取笔记的改动(由于缓存和网络延迟,网站刷新两次就能看到同步)。 若您站点始终无法同步笔记的数据,请再次检查上面的步骤3: 1.在Notion中检查您的PAGE_ID 格式是否正确、并已开起页面分享。 2.Vercel后台环境变量NOTION_PAGE_ID是否配置,重新配置后尝试Redploy。 3.配置文件blog.config.jsNOTION_PAGE_ID是否被写死。 ❓此教程使用Vercel来部署:Vercel是一个在线代码托管平台,对于个人使用,其免费版已经完全足够,因此您无需购买服务器即可搭建自己的网站。 除了Vercel云托管、您还可以选择服务器本地部署导出静态网页Docker容器化CloudFlare部署等方案。 

自定义您的站点

💡部署成功后,您可以很方便地在笔记或Github代码中个性化您的站点,不需要每次都重新导入Vercel。

1.修改基础信息

在Notion页面中,以下四个元素将会直接同步到网页作为站点信息:

notion image

修改Notion页的图标①、标题②、描述③及封面图④ 将分别对应同步站点的作者头像站点标题站点描述和首页的封面大图。图标支持自定义上传图片,建议图片文件不要过大,否则影响网页打开速度。

notion image

2.更多自定义配置

1.Vercel会自动将您Github仓库中的代码部署到站点,最常见的是修改blog.config.js后更新站点。

2.修改Vercel环境变量

notion image
notion image
notion image
notion image

3.修改字体

4.Notion隐私安全

notion image

💡想要更大程度地修改页面的样式与布局?请参考《NotionNext二次开发手册》进行自定义开发。

3.开启评论插件

参考以下三篇文章开启您的评论功能NotionNext配置评论插件Twikoo | TANGLY’s BLOG一个简洁、安全、免费的静态网站评论系统,基于 腾讯云开发 。 经评论区网友推荐,我开始使用 Twikoo,一番体验,发现Twikoo真的很强大,目前我决定用它作为主要评论插件。 twikoo支持在页面上直接管理评论、配置插件,非常强大 在最新版本中 NotionNext已经 支持该评论插件,配置 方法很简单: 在Vercel后台添加一个环境变量 NEXT_PUBLIC_COMMENT_ENV_ID ; 值为您部署好的 twikoo 后台地址。以我的举例: 借助vercel,您可以非常快速地部署自己的twikoo后台,用于储存评论数据。 twikoo的后台数据存储是基于MongoDB数据库的,我们可以先注册创建一个免费的在线MongoDB数据库。 创建MongoDB数据库 1.注册账号 创建数据库 这里下方要设置一个允许访问该数据库的IP地址,推荐设置0.0.0.0,即所有地址都允许访问,毕竟我也不知道自己会用什么ip访问这个数据库。 2.获取数据库连接地址 Vercel一键部署 点击Create将twikoo的代码拷入您的仓库 配置MongoDB数据库地址 添加一个配置 MONGODB_URI 环境变量即可,其值为上一步获得的MongoDB连接地址,注意将链接中MONGODB的密码 替换成您设置的。 上述部署完成后,您将获得一个vercel的twikoo后台页面,您可以选择像我一样映射成二级域名 将您的twikoo后台地址配置在NotionNext的后台,并redeploy即可。 到此完成~ 点击右下角的小齿轮即可配置您的管理员密码、并进行更多的功能设置。赶快体验吧~ 可以访问官方文档获取安装部署帮助,并且查看Twikoo的更多特性。 NotionNext支持多种评论插件,可访问以下文章获得帮助:https://tangly1024.com/article/notionnext-twikooNotionNext评论插件Cusdis/Giscus/Gitalk/Utterance | TANGLY’s BLOGNotionNext支持多种评论插件,其中体验比较好的我个人觉得是Valine/Waline,但是这类评论插件需要注册LeanCloud平台才能进行数据管理,部署起来的流程也较为繁琐,关于Valine/Waline的部署可以访问此篇文章: Utterance 、 Giscus 、Gitalk 其中部署最便捷的当属 Cusdis 和 Utterance 这两个插件,您也可以选择同时部署多个。 完成效果预览 点击Start for free ,并用Github登录即可 Sign in With Github (点击查看截图) [可选] 配置邮件通知地址,以便收到新评论时邮件通知您,(点击展开截图) 点击Embed Code获取您的应用ID,即data-app-id, 复制这串id备用。 在Vercel后台添加一个环境变量 NEXT_PUBLIC_COMMENT_CUSDIS_APP_ID,值为上面获取到的data-app-id。 完成预览效果 在您的Github中创建一个开源项目用于存放评论 在github中安装utterance插件 允许utterance访问所有仓库,并勾选install,此步骤也可以只勾选作为评论用的仓库地址。 将用作评论仓库名添加到Vercel添加环境变量 后台 settings→ environment variables → 添加 → save 即可。如下图: 注意, 仓库名的格式是 [您的用户名/您的仓库名] 如下示例 完成预览效果 在您的Github中创建一个开源项目用于存放评论 创建一个授权秘钥,并保存您的ClientID与ClientSecret Authorization callback URL 填写您网站域名 填写配置的效果 ,点击 register application 即可创建。 点击 Generate a new client secret 生成您的密码 复制 Client ID和刚生成的 Client secret (对应图中2和3)备用。 在Vercel后台配置环境变量 NEXT_PUBLIC_COMMENT_GITALK_CLIENT_ID NEXT_PUBLIC_COMMENT_GITALK_CLIENT_SECRET NEXT_PUBLIC_COMMENT_GITALK_CLIENT_ID NEXT_PUBLIC_COMMENT_GITALK_CLIENT_SECRET 项目会在您的Github项目讨论区创建评论数据,便于维护管理 , 完成效果 预览 您可以在Github的Discusstion讨论区随时管理评论。 在您的Github中创建一个开源项目用于存放评论 在项目Setting中开启discussion功能 在Github中安装giscus应用 点击右上方的Install即可,并确认 允许访问仓库数据权限: 默认勾选All repositories即可。也可以只勾选用作评论的仓库,(后续还可以再回来配置) 访问Giscus填写并获取您的Giscus配置参数 主要配置输入您的仓库名,并选择 Discussion分类为 Announcements .https://tangly1024.com/article/notion-next-comment-pluginNotionNext配置Valine/Waline评论插件 | TANGLY’s BLOGValine插件需要LeanCloud后端提供数据库存储功能,请按照以下步骤配置。 而Waline 的前置步骤和Valine基本一致,只是多了一个部署Waline的Vercel服务步骤。由于Waline配置了完善的后台管理功能,所以使用Waline就不需要再配合Admin-Valine项目运行。 应用创建好以后,进入刚刚创建的应用,选择左下角的 设置> 应用Key,然后就能看到你的 APP ID和 APP Key 了: 为了你的数据安全,请设置自己的 安全域名 :只有以下设置的域名,才允许访问你的valine数据 支持的Valine配置在NotionNext项目的blog.config.js 中,请在Vercel后台的环境变量中配置: serverURLs在应用内部会尝试自动获取,如果发现获取失败,请手动提供 刚刚创建的应用,选择左下角的 设置> 应用Key,找到 Request 域名 第一行 需要在akismet中注册账号并获取免费的key: https://akismet.com/account ,并在LeanCloud中配置 AKISMET_KEY 变量 参考官方文档,在你的Vercel上部署一个valine应用。而后在你的NotionNext环境变量中添加你的waline服务地址环境变量: NEXT_PUBLIC_WALINE_SERVER_URL 即可生效。https://tangly1024.com/article/notionnext-valine

4.绑定自己的域名

vercel有为你的站点提供一个 *.vercel.app 的域名,但vercel的官方域名在大陆被墙,所以推荐您绑定自己的域名。参考以下文章,您可以快速地将自己的域名解析到Vercel站点:Vercel应用绑定自己的域名 | 小唐笔记📒首先需要在域名服务商处购买域名,可以选择Namesilo、Freenom、Godaddy、阿里云、腾讯云等任意平台。并在域名服务商后台添加一条CNAME转发进行解析,CNAME值为 cname.vervel-dns.com 。 CF具有Worker.js、全球无限CDN流量、网站防火墙、DDoS等特性,我个人比较喜欢将域名解析交给CloudFlare管理 。 …https://tangly1024.com/article/vercel-domain

项目更新

项目不定期会修复bug、增加新特性,请参考此篇文章进行更新:NotionNext更新指南 | TANGLY’s BLOG本项目在长期维护更新中,不时将修复一些bug和增加新特性。 只要在您fork后的的NotionNext中点击 Fetch upstream 就能更新为最新的代码 有时这里显示的不是 Fetch and Merge 按钮,而是 Open pull request。原因是我和你的代码发生冲突( confilcts),例如我修改了 blog.config.js 文件,你也修改了此文件,导致在更新时,Git需要人工确认要合并代码时保留的blog.config.js文件版本。https://tangly1024.com/article/how-to-update-notionnext

联系我们

分类
docker

docker 两种安装方式.命令行.

命令行安装

如果你熟悉命令行,可能用 docker cli 更快捷

1
2
3
4
5
6
7
8
9
# 运行容器
docker run -d \
–restart unless-stopped \
–name countdown \
-p 3434:3000 \
-e TIMER_BACKGROUND=”https://digwallpapers.com/wallpapers/full/3/a/2/32039-3840×2160-sci-fi-images-background-desktop-4k.jpg” \
-e TIMER_TARGET=”Sat Nov 26 2022 06:00:00 GMT+0800″ \
-e TIMER_TITLE=”Business trip in Suzhou” \
yooooomi/easy-countdown

也可以用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
version: “3.8”

services:
web:
stdin_open: true # So that the serving is not exited with code 0
image: yooooomi/easy-countdown
container_name: countdown
restart: unless-stopped
ports:
– “3434:3000”
environment:
TIMER_BACKGROUND: “https://digwallpapers.com/wallpapers/full/3/a/2/32039-3840×2160-sci-fi-images-background-desktop-4k.jpg”
TIMER_TARGET: “Sat Nov 26 2022 06:00:00 GMT+0800”
TIMER_TITLE: “Business trip in Suzhou”

然后执行下面的命令

1
2
3
4
5
6
7
8
9
10
# 新建文件夹 countdown 目录
mkdir -p /volume2/docker/countdown

# 进入 countdown 目录
cd /volume2/docker/countdown

# 将 docker-compose.yml 放入当前目录

# 一键启动
docker-compose up -d
分类
docker nas

hexo github 搭建

https://blog.csdn.net/qq_58608526/article/details/124652412

这个命令行详细.不错.不过过程不够详细.搭建完.只能本地浏览.

https://blog.csdn.net/weixin_42072280/article/details/128277772

这个更接近我搭建时间.设置详细.仓库创建需要增加readme不然失败.继续学习.

https://blog.17lai.site/posts/40300608/#Hexo-%E6%97%A5%E5%B8%B8%E6%93%8D%E4%BD%9C%E5%91%BD%E4%BB%A4 [三万字教程]基于Hexo的matery主题搭建博客并深度优化一站式完全教程 _

笼统 有功底才能学习哈.

分类
未分类

网站推荐

https://kaifa.baidu.com/ 开发者搜索

https://laosu.ml/archives/ 杨浦老苏.技术不错.

网站推荐

分类
nas

lsky token获取办法 配合picgo使用

https://blog.csdn.net/qq_49488584/article/details/126867156

这个文章讲述了postman具体使用方法 不错.第一次用.

站长工具Postman添加token

email

password

都要填写后面value数值.

https://blog.csdn.net/weixin_43176937/article/details/126784127

这个提了一嘴postman 但是不全.不过先看到有这个方法.不然还不知道哈.

分类
nas

lsky兰空图床安装在ds3617上

安装环境不同.失败告终.

https://zhuanlan.zhihu.com/p/544546775 方式和上面类似 lskypro 2.0版本的 安装失败.

https://www.himiku.com/archives/docker-with-lsky-pro.html

继续失败.php8.0版本以上才行.

官方下载稳当1.6.4 失败.

https://github.com/lsky-org/lsky-pro/releases

官方各种版本.

https://www.kancloud.cn/wispx/lsky-pro/880044

官方安装手册.发现失败原因.

因 Lsky Pro 需要使用 rewrite 重写 url,所以不支持虚拟主机安装。

Lsky Pro 安装全程可视化页面,只需要下载程序解压到 web 站点目录,访问首页会自动跳转到安装页面,根据提示操作即可,具体步骤:

  1. 下载兰空,上传至 web 运行环境,解压。
  2. 设置运行目录为 public。
  3. 配置 Rewrite 规则:Nginx:location / { if (!-e $request_filename) { rewrite ^(.*)$ /index.php?s=$1 last; break; } } Apache:Apache直接使用.htaccess即可
  4. 访问首页,未安装自动跳转至安装页面,根据页面提示安装即可。
  5. 安装完成以后请设置runtime目录 0755 权限,如果你使用本地存储,public 目录也需要设置为 0755 权限

1.6.0 版本开始, 不再支持修改网站运行目录

想起了mt博客也是重写 静态重写.原理没有研究过.记住个名词.

最后的希望.

https://blog.csdn.net/wbsu2004/article/details/118555096

开源的兰空图床LskyPro

https://registry.hub.docker.com/r/wbsu2003/lskypro/

配置环境相同.还有docker.希望能成功.正在下载.

之前chevereto图床 死活连不上picgo.github的图床可以.gitee的图床也可以的.

https://www.imagehub.cc 的免费图床也可以的.就是自建的不行.frp的问题也不是.升级了chevereto1.4.1到1.6.2版本还是不行.放弃.

分类
网络

mariadb mysql

MySQL数据库介绍
MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL数据库系统使用最常用的数据库管理语言–结构化查询语言(SQL)进行数据库管理。
MySQL的历史最早可以追溯到1979年,那时Oracle也才刚刚开始,微软的SQL Server影子都没有。
在2008年1月16号 MySQL被Sun公司收购。
2009年,SUN又被Oracle收购
体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,使得许多企业选择了MySQL作为数据库
MySQL官网介绍
主页https://www.oracle.com/mysql/index.html
下载主页面https://www.mysql.com/downloads/
社区资源下载页面https://dev.mysql.com/downloads/
MySQL社区版下载页面https://dev.mysql.com/downloads/mysql/
MySQL相关产品介绍
Oracle MySQL Cloud Service (commercial)
商业付费软件,基于MySQL企业版和Oracle云服务提供企业级 的MySQL数据库服务
MySQL Enterprise Edition(commercial)
商业付费软件,除了提供MySQL数据库服务之外,又包含了connector(程序连接接口),partition(表分区),企业级的monitor(监控),HA(高可用),backup(备份),Scalability(扩展)等服务
MySQL Cluster CGE(commercial)
商业付费软件,基于MySQL Cluster和企业版拥有的各项功能提供企业级的高并发 、高吞吐的数据库服务
MySQL Community Edition
免费社区软件,提供基础的数据库服务和其他衍生服务
MySQL 社区软件相关产品介绍
MySQL Community Server
最流行的开源数据库管理软件,当前最新版本是5.7(截止2020年5月最新版本是8.0)
MySQL Cluster
基于MySQL数据库而实现的集群服务,自身能提供高并发高负载等特性
MySQL Fabric
MySQL官方提供的关于MySQL数据库高可用和数据分片的解决方案
MySQL Connectors
为应用程序提供JDBC/ODBC等访问MySQL数据库的接口服务
MySQL Community Server各版本主要区别
MySQL4.0版本:增加了子查询的支持,字符集增加UTF-8,GROUP BY语句增加了ROLLUP,mysql.user表采用了更好的加密算法,InnoDB开始支持单独的表空间
MySQL5.0版本:增加了Stored procedures、Views、Cursors、Triggers、XA transactions的支持,增加了INFORATION_SCHEMA系统数据库
MySQL5.5版本:默认存储引擎更改为InnoDB,提高性能和可扩展性,增加半同步复制
MySQL5.6版本:提高InnoDB性能,支持延迟复制
MySQL5.7版本:提升数据库性能和存储引擎,更健壮的复制功能,增加sys系统库存放数据库管理信息
MySQL和MariaDB
MySQL在过去由于性能高、成本低、可靠性好,已经成为最流行的开源数据库,因此被广泛地应用在Internet上的中小型网站中。随着MySQL的不断成熟,它也逐渐用于更多大规模网站和应用,比如:阿里、腾讯、维百、Google和Facebook等网站。非常流行的开源软件组合LAMP中的“M”指的就是MySQL

但被甲骨文公司收购后,Oracle大幅调涨MySQL商业版的售价,且甲骨文公司不再支持另一个自由软件项目OpenSolaris的发展,因此导致自由软件社区们对于Oracle是否还会持续支持MySQL社区版(MySQL之中唯一的免费版本)有所隐忧,MySQL的创始人麦克尔·维德纽斯以MySQL为基础,成立分支计划MariaDB。而原先一些使用MySQL的开源软件逐渐转向MariaDB或其它的数据库。

MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。

谷歌与MariaDB
Google为了顺利从MySQL迁移到MariaDB,降低数据迁移成本,甚至派遣了一名工程师到MariaDB基金会协助开发,Google和MariaDB基金会的合作关系已经显而易见。

MariaDB基金会董事会
2017年MariaDB生态系统,取得了很大的进展,包括开源,资金,协作,产品,服务,当然还包括开发和维护MariaDB代码本身。

2017年董事会选出了几名新成员。2017年6月,董事会选出了3名新成员:阿里云的Xiaobin Lin,IBM的Todd Boyd和Barry。12月,又有两名新董事会成员当选:腾讯云的张青林和微软的Tobias Ternstrom。
图中的MariaDB和MySQL,一个向右,一个向左。
MariaDB名称来自麦克尔·维德纽斯的小女儿玛丽亚(英语:Maria)的名字
MySQL名称来自 麦克尔·维德纽斯的女儿“My”是因为 Monty 的大女儿叫做 My,“SQL”就是 Structured Query Language(结构化查询语言),用于和数据库交互的语言

MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。

MySQL的海豚标志的名字叫“sakila”,它是由MySQLAB的创始人从用户来在“海豚命名”的竞赛中自建议的大量的名字表中选出的。获胜的名字是由来自非洲斯威士兰知的开源软件开发者AmbroseTwebaze提供。根据Ambrose所说,Sakila来自一种叫SiSwati的斯威士兰方言,也是在Ambrose的家乡乌干达附道近的坦桑尼亚的Arusha的一个小镇的名字。

MariaDB直到5.5版本,均依照MySQL的版本。因此,使用MariaDB5.5的人会从MySQL5.5中了解到MariaDB的所有功能。从2012年11月12日起发布的10.0.0版开始,不再依照MySQL的版号。10.0.x版以5.5版为基础,加上移植自MySQL 5.6版的功能和自行开发的新功能。
在存储引擎方面,10.0.9版起使用XtraDB(名称代号为Aria)来代替MySQL的InnoDB。
MariaDB的API和协议兼容MySQL,另外又添加了一些功能,以支持本地的非阻塞操作和进度报告。
这意味着,所有使用MySQL的连接器、程序库和应用程序也将可以在MariaDB下工作。
在此基础上,由于担心甲骨文MySQL的一个更加封闭的软件项目,Fedora的计划在Fedora 19中的以MariaDB取代MySQL

MySQL人物历史
随着科技公司的兴起和衰落,大学计算机专业的学生数量不断变化着,而目前,计算机科学专业正蓬勃发展。这意味着,不管是好是坏,大多数的计算机科学毕业生理想最多写两年代码,然后做项目经理再学习风险,创业,或进入商学院学习,然后进入一家公司的中层管理,在32岁结婚,生两个孩子,一个女儿,一个儿子,养一条狗,一栋漂亮的两层楼的有太阳能电池板的别墅。对于大多数来说一个程序员工作是一份早九晚五的工作,毕业后拿着六位数的工资来偿还大学学费,这只是一个手段,而没有人会为此受到责备。但是对于成千的好的、中等的和一般的程序员,只有一个 Monty Widenius。

Monty Widenius

Monty 是一个编程天才。19岁的时候就从赫尔辛基理工大学退学并找了份全职工作,因为在学校里已经不能再教他什么了。33岁的时候他发布了 MySQL,世界上最有名的开源数据库,除了一个库之外,他编写了数据库的全部东西。55岁的时候他抛开年龄问题,现在仍是公司的较好的程序员。

Monty 出生于1962年的赫尔辛基,Monty 1978年买了他的第一台个人电脑,为了买这台电脑他用了整个夏天在马路上铺沥青。Monty 很快发现他很擅长写代码——那些对于其他人来说很复杂的事情对他来说却很简单,他很快全身心投入到他的工作上了。“三个小时就像几分钟,很快就过去了。” Monty 说。“简单的说,这就像是在看一本很好很好的书。或者玩一个游戏。你知道当你开始玩游戏,很快三个小时就过去了。这就是我写代码的感觉。”

当其他人去参加聚会的时候,Monty 在家里写代码。他学会了计算机的输入和输出。他把 BASIC 发挥到了极致。“学校不知道编程不像其他的语言和历史学科,其他学科只需要学习。” Monty 说:“除了在学校学习还不够,较高级黑客,这只有1/1000的概率。他们在所有时间,10个小时,16个小时,每天,年复一年都在用于编码。这不是每个人都想做的事情。大多数的人都偏向于拥有一个人生。”在 Monty 的眼中,好的代码就是写了一次以后永远不会再改动。从性能上来讲,他是最优的,而且总是可以不重写的。

1980年,17岁的 Monty 陷入了编程中,他需要增加他电脑的存储空间,从8KB到16KB。因为芬兰没有商店卖他想要的,后来他就乘船来到了瑞典 Allan Larsson 的一家电脑店铺。那里 Allan, Monty 见到了 David Axmark,他们三个保持联系了很多年,在项目上经常互相帮助,偶尔还一起合作。1995年他们一起创立了 MySQL AB。Monty 负责编码,David 和 Allan 做剩下的事情。Monty 早在1981年就开始写了部分 MySQL 代码,他为芬兰公司 Tapio Laakso Oy 工作的同时也为他和 Allan 一起创建的数据仓库公司工作。但是在 Allan 和 David 的极力说服下 Monty 决定在他现在的代码之上加一层 SQL 层。1996年十月,MySQL 终于发布了,得到了广泛的好评。数据库表现很快,很可靠,学起来很简单,很大部分功劳都归功于 Monty 这些年一直在根据真实用户的反馈进行着持续的改进开发。

MySQL 生来就是为存储和管理海量数据服务的。如果有人希望跟着大量的数据点,他们使用数据库,这有点像微软的 Excel。但是,随着数据越来越多,在 Excel这样的数据库里查找数据变得很慢,而且不可靠。MySQL 能存储很多数据而且查找数据时返回的特别快。“My”是因为 Monty 的女儿叫做 My,“SQL”就是 Structured Query Language(结构化查询语言),用于和数据库交互的语言。


一张图告诉你 MySQL 是什么

开源 MySQL 的决定在1985年就有了,在一次芬兰和瑞典的邮轮旅程中,这是在一次开源的会上。Monty 说:“决定开源 MySQL 的讨论并没有花几分钟,他想给开源社区回馈点东西。即使有的人要拷贝和偷窃你的代码,我们想我们开源后不会比我们现在的收入有所减少。”开源项目让社区的开发者更好的开发软件,但是缺点是从企业角度来说把产品货币化就更困难。为了避免这种情形,Monty 增加了一个条款,如果任何企业用 MySQL 来挣钱,那么这个公司就必须购买许可证。但是实际上代码里并没有逻辑来这样处理,不过由于这个系统很有名,MySQL 还是可以扩张并且盈利的。Monty 说:“我相信开源是开发软件更好的一种方式,但是你还是要有足够的收入来雇员工和创办公司和其他的开源社区进行竞争。MySQL 是第一款做到的产品。”

在 MySQL AB 的时候,Monty 担任的是 CTO ,对于大多数城市的公司来说,CTO 只做一点点的编码工作。但是 Monty 从没有停止编码。这让一些晚一些阶段的创业公司感到羞愧,即使有550名员工,Monty 在 MySQL AB 规定了一个特别的文化,不让他每天的日程都被回会议排的满满的。(实际上,Monty 不接受预约的邀请)。Monty 说: “我总是雇佣自己开车的人,所以我不会给他们经常聊天。同时有开源你就有了一个开放的社区,人们能给你编码,你可以检查代码的质量,他们和社区怎么互动,和你怎么互动,他们问的问题,在这些场景下你很容易看到一个人是好还是坏。在一个面试中你很难知道你面试的人怎么样。”

MySQL 的成功是 CTO Monty 和 CEO Mårten Mickos 合作的成果。两人在不同的方面都很能干,对公司都很重要。Monty 是技术专家,专注于员工生产完美的代码。Mårten 是公司的创建者,他专注于运送物品,并且帮助团队成长。这是两人远景的结合才创造了 MySQL。但是在一个没有免费洗衣机,免费视频和站立办公桌的公司,是 Monty 吸引了编程天才们。Monty 不是一个善于社交活动,讨人们喜欢的,游戏理论大师,或者专业的网络工作者的筹款人。他编码,而且做得非常好。在 Monty 的眼中,让开发这尊重是很简单的:“你跟他们做相同的事,但是比他们做的更好就可以了。”


“我的自由软件支撑了你的公司。”

程序员如果看到了,Monty 建议参与到开源社区,同时在个人项目上花些时间(“我这些年创作了上百个软件。MySQL 是使用最多的一个,其他的就是我自己用而已”)。同时他提醒,频繁的换环境和编码意味着较好的程序员也有很多要学习的。在 Oracle 收购了 Sun,Monty 创立了 MariaDB,一个开发的分支,由同意的团队成员,和相同的官方语言:“蹩脚的英语。” MySQL 里很多热心的开源拥护者跟着 Monty 到了 MariaDB。MariaDB 更倾向于开发者,允许来自外部的补丁,并且是许多 Linux 发行版的默认数据库。

Monty 给开源社区和开发者的承诺是很有力的 —— OpenOcean 最初就是由 Monty 用 MySQL 的收益来创立的,致力于开发者驱动和更深的科技产品。他还邀请了开发者到他在赫尔辛基的家里吃午餐,很快 OpenOcean 将会为开发者直接向 Monty 提问开一个 Slack 频道。这么多年,Monty 给开源社区的贡献是不可否认的。然而,这是成千上万名不知名的程序员和黑客的时间和能力的结果,大部分的功劳应该归功于他们,而是他们才能确保开源革命继续前行。
出处

浅谈MySQL和mariadb区别
转载出处
MariaDB是MySQL源代码的一个分支,在意识到Oracle会对MySQL许可做什么后分离了出来(MySQL先后被Sun、Oracle收购)。除了作为一个Mysql的“向下替代品”,MariaDB包括的一些新特性使它优于MySQL。

这两个数据库究竟有什么本质的区别,我看mariadb文件夹BIN中还是mysql*.exe,除了MySQL会被ORACLE闭源外,而mariadb则开源,他俩之间到底还有什么本质区别没有?

区别一:

MariaDB不仅仅是Mysql的一个替代品,它的主要目的是创新和提高Mysql的技术。

区别二:

MySQL之父Widenius先生离开了Sun之后,觉得依靠Sun/Oracle来发展MySQL,实在很不靠谱,于是决定另开分支,这个分支的名字叫做MariaDB。

MariaDB跟MySQL在绝大多数方面是兼容的,对于开发者来说,几乎感觉不到任何不同。目前MariaDB是发展最快的MySQL分支版本,新版本发布速度已经超过了Oracle官方的MySQL版本。

MariaDB 是一个采用Aria存储引擎的MySQL分支版本,是由原来 MySQL 的作者Michael Widenius创办的公司所开发的免费开源的数据库服务器。

这个项目的更多的代码都改编于 MySQL 6.0,例如 “pool of threads”功能提供解决多数据连接问题。MariaDB 5.1.41 RC可以到这里下载,32位和64位已编译Linux版本,还包括源代码包。MariaDB基于GPL 2.0发布。

所以对于大部分的MySQL用户来说,从现在主流的MySQL转到MariaDB应该是没有什么难度的。

区别三:

LAMP架构盛极一时,这离不开MySQL的免费与易用,但是在Oracle收购了Sun之后,很多公司开始担忧MySQL的开源前景,而最近Oracle进一步闭源的举措更是让人难以安心,众多互联网公司纷纷开始寻求MySQL的替代方案。

不得不提的是Apple的远见,在Oracle收购Sun之初就宣布迁移到PostgreSQL。但PostgreSQL的设计初衷就不同于MySQL,并不是使用MySQL的大部分互联网公司合适的解决方案。除了Apple,Google、Facebook、Twitter也大量使用了MySQL,纷纷发布了自己的MySQL分支/补丁集,并为不少公司所采用。同时,MariaDB、Percona等MySQL分支也渐渐步入大众的视野。

根据Wikipedia介绍,MariaDB是一个社区驱动的、采用XtraDb存储引擎的MySQL分支版本,由MySQL创始人Michael Widenius带领开发,遵循GPL v2.0协议开源。因为MySQL创始人的介入,MariaDB备受关注,Drupal、MediaWiki、phpMyAdmin、WordPress等众多应用都宣布支持MariaDB。

另外,Wikipedia开发者Asher Feldman之前宣称已将英文维基的一个从(slave)数据库从MySQL5.1 + Facebook补丁集迁移到了MariaDB 5.5.28。通过全面测试发现,MariaDB的查询效率提升了3%-15%,平均提升了8%,而且没有任何异常发生;以qp为单位,吞吐量提升了2%-10%。由于缺少数据支持,现在还不能得出任何结论,但单从测试结果看来还是非常积极的。

Asher还表示,join中索引的使用以及查询优化,特别是子查询方面,MariaDB都有不少提升,可惜目前还没有涉及到,完全升级可能还需要1-2个月。最后他强调,性能并不是Wikipedia采用MariaDB的主要原因,他们看中的是MariaDB的开源性,只有这样才能保证社区的真正开放;此外,MariaDB对MySQL导出的良好支持也非常重要,性能的提升只是迁移的附属。

为什么MariaDB更优于MySQL
转载出处
本文为读者提供MariaDB和MySQL的深入见解。分析两者并讨论它们之间的差异。还有一部分内容阐述为什么MySQL用户应该切换到MariaDB。

如今,组织有一系列数据库可供选择–无论是商业还是开源。曾经有一段时间,大多数数据库管理系统(DBMS)都是商业的。但是现在,随着众多开源数据库的推出,行业专业人士更愿意使用它们。实际上,开源数据库在当今市场上占有相当大的份额,因为用户可以根据需求自由地实现系统,并充分利用这些系统。

开源数据库系统可从Oracle,Microsoft,Google,Amazon和Rackspace等各种供应商处获得。开源数据库管理系统(DBMS)的历史并不长。第一个可用的开源数据库管理系统是MySQL,它于1995年推出,直到今天,它已经有很多重大的改进,使其成为商业数据库软件的强大竞争对手。

开源数据库管理系统越来越受欢迎,不仅因为它们功能丰富,成本低廉,而且还因为它们的操作效率。用户享受在根据个人需求定制源代码时的自由,以及少量的编程知识是也是一个加分项。Gartner报告说,开源数据库管理系统每年增长42%,到2020年这个行业的价值将达到80亿美元。报告中约80%的用户使用某种开源软件,包括数据库管理系统(DBMS)。像微软和IBM这样的各种商业供应商也提供他们数据库管理系统(DBMS)软件的“快速版”。

最广泛采用的开源数据库管理系统(DBMS)是MySQL和MariaDB。本文讨论它们的相似之处,差异和相对优点,然后再提出用户应该迁移到MariaDB的原因。

数据库

数据库是以表格形式保存数据的特定结构。支持通过基于表格结构的数据流的软件称为数据库管理系统(DBMS)。使用最广泛的数据库管理系统(DBMS)是关系数据库管理系统(RDBMS)。数据库管理系统(DBMS)是一种计算机软件应用程序,可与终端用户,其他应用程序和数据库本身交互以捕获数据。通用数据库管理系统允许定义,创建,查询,更新和管理数据库。

数据库及其数据的功能是:

数据定义:创建,修改和删除为数据组织奠定基础的定义

数据更新:插入,修改和删除数据

检索:通过进行特定查询从整个数据库检索数据

管理:用户创建和修改,数据安全性,性能监控,数据完整性,并发控制和数据恢复

因此,数据库系统是数据库模型,数据库管理系统(DBMS)和数据库的组合。

MySQL

MySQL是一个用C和C ++编写的开源多线程关系数据库管理系统(RDBMS)。MySQL由瑞典公司MySQL AB创建,该公司由David Axmark,Allan Larsson和Micheal Monty Widenius创建,并于1994年开始开发。第一个版本于1995年5月23日发布。MySQL是中的”My“取自联合创始人Monty Widenius女儿的名字。MySQL海豚标志–Sakila是从用户在“Name the Dolphin”比赛中的大量提议中选出的。

MySQL服务器适用于任务关键型,重载生产系统以及嵌入大规模部署的软件。它被认为是LAMP栈(Linux,Apache,MySQL和PHP)的核心组件。MySQL数据库适用于Linux,Windows,MAC,BSD UNIX等各种操作系统平台。维基百科,Facebook和YouTube等热门网站使用MySQL。

MySQL现在是Oracle公司以及其附属公司拥有的商标,并且是双重许可。用户可以选择GNU许可作为开源软件使用,甚至可以购买有Oracle许可证的商业软件。

MySQL体系结构

MySQL服务器基于分层架构,由主要子系统和支持组件组成,它们通过相互交互来读取,解析和执行查询以返回结果。

MySQL的五种主要子系统是:
查询引擎
存储管理器
缓冲管理器
事务管理器
恢复管理器

查询引擎:它包含三个主要的相关组件 – 语法分析器,查询优化器和执行组件。语法分析器以一种MySQL引擎能够理解的形式分解从调用程序接收到的SQL命令。“查询优化器”简化执行组件使用的语法,然后为查询执行准备最有效的计划。执行组件根据它接收的信息解释执行计划,并向其他组件提出请求以检索记录。

存储管理器:与操作系统连接,以用户表,索引和日志以及内部系统数据的形式将数据写入磁盘。

查询缓存: MySQL引擎使用查询缓存–极其高效的结果集缓存机制,这极大地减少了查询的响应时间,这些查询被调用当检索与先前查询相同的数据。

缓冲区管理器:处理查询引擎和存储管理器对数据请求之间的所有内存管理问题。MySQL使用内存来缓存可以返回的结果集,并且缓存被保存在缓冲区管理器中。

事务管理器:这个子系统提供了锁定功能,以确保多个用户以一致的方式访问数据,而不会损坏或破坏数据。

恢复管理器:为了在发生任何类型的数据丢失的情况下进行检索,会保留数据的副本。

MySQL的两个支持组件是:
进程管理
函数库

进程管理器:它执行两个主要功能 – 管理通过网络连接的用户,以及通过多线程,线程锁定和执行线程安全操作同步任务和进程。

函数库:它包含通用的函数,如字符串操作,排序操作和执行特定于操作系统的函数,如内存管理和文件I / O。

MySQL的特点

关系数据库管理系统: MySQL支持所有功能,这使得它成为一个完整的关系数据库管理系统(RDBMS)。它支持完整的SQL作为查询和更新数据的标准化语言,并且可以管理数据库。
简单而安全:与其他数据库管理系统(DBMS)软件相比,MySQL使用非常简单且具有交互性,并且具有可靠的数据安全层,可为数据提供高效的加密,因此非常安全。
客户机/服务器体系结构:其简单的客户机/服务器体系结构可帮助终端用户创建一个与许多客户机连接的服务器,以便与服务器进行通信进行插入,更新和管理数据库。
可伸缩性: MySQL可以处理大量数据而不会出现任何卡顿 – 多达5000万行。它可以处理高达8TB的数据而没有任何问题。
跨平台:与几乎所有操作系统兼容,如UNIX,Windows,Linux,MAC OS X等。
高性能,灵活且高效的生产力: MySQL提供更快速,高度可靠,便宜的存储解决方案,并支持大量嵌入式应用程序。它利用触发器,程序和视图来提高生产力。

MariaDB

MariaDB是MySQL的分支版本。它主要是由于MySQL在被Oracle公司收购时出现的问题而开发的。MariaDB是一个通用的数据库管理系统(DBMS),它具有可扩展的架构,可通过可插拔存储引擎支持大量的用例。它使用不同的存储引擎来支持不同的用例。

MariaDB是一款开源的多线程关系数据库管理系统,在GNU公共许可证(GPL)下发布。其首席开发人员是Michael Monty Widenius,他也是MySQL AB的创始人之一。作为数据库系统,许多功能有助于MariaDB的普及。其速度是其最显着的特点之一。MariaDB也具有很强的可扩展性,能够处理数万张表和数十亿行数据。它还可以快速平稳地管理少量数据,方便小型企业或个人项目。另一个与前任不同的特点是专注于安全。MariaDB的内置功能包括操作和格式化文本,业务和统计计算,记录时间顺序信息,

MariaDB服务器是世界上最流行的开源数据库之一。它在Debian和Ubuntu中可用,现在是Arch Linux,Manjaro,openSUSE,Red Hat Enterprise Linux,CentOS,Fedora和SUSE Linux Enterprise的默认数据库。作为世界上最广泛采用和广泛部署的产品之一,MariaDB服务器收到阿里巴巴,Facebook和谷歌等公司的捐款。最近,微软还联手支持MariaDB社区。

MariaDB的特点

MariaDB可用于GPL,LGPL和BSD。
它包括广泛的存储引擎选择,包括高性能存储引擎,用于与其他关系数据库管理系统(RDBMS)数据源一起工作。
它使用标准和流行的查询语言。
MariaDB在许多操作系统上运行,并支持各种编程语言。
它提供对PHP的支持,PHP是最流行的Web开发语言之一。
它提供Galera群集技术。
MariaDB还提供了很多在MySQL中不可用的操作和命令,并消除/取代了对性能产生负面影响的功能。
其他功能还包括多源复制,融合IO优化,表发现和联机更改表。

MariaDB和MySQL的比较分析

MariaDB拥有大量新功能,这使得它在性能和用户导向方面更加出色。让我们来评估MariaDB和MySQL,以确定哪一个更好。这种选择最终将取决于IT经理以及他们对开源数据库的熟悉程度。

MySQL和MariaDB之间的一些重要差异

1. 数据库的使用情况:自1995年以来,MySQL一直被视为迄今为止实施最为广泛且最广泛使用的开源数据库。许多像Twitter,YouTube,Netflix和PayPal这样的IT巨头,以及美国国家航空航天局,美国国防部队和沃尔玛都利用这个数据库。

最近才到来的MariaDB也在各种IT巨头组织(如Google,Red Hat,CentOS和Fedora)中作为后端软件因此得到了强大的基础。

2. 数据库和索引的结构: MySQL是一个纯粹的关系数据库,集成了一个ANSI标准的信息模式,由表,列,视图,过程,触发器,游标等组成。MySQL的结构化查询语言(SQL)是ANSI SQL 99。

而MariaDB是MySQL的一个分支,因此具有相同的数据库结构和索引。该功能使MariaDB成为希望直接切换或升级后端的用户的理想选择,而无需升级数据库和数据结构。

当从MySQL升级到MariaDB时,所有内容(从数据,表格定义,结构和API)都保持一致。

3. 二进制和实现: MySQL是使用C和C ++开发的,并且完全兼容几乎所有操作系统,如Microsoft Windows,MAC OS X,Linux,FreeBSD,UNIX,NetBSD,Novell Netware和其他许多操作系统。

MariaDB使用C,C ++,Bash和Perl开发。它与Microsoft Windows,Linux,MAC OS X,FreeBSD,Solaris等各种操作系统兼容。

4. 复制和集群: MySQL通过主从主复制和主从复制提供强大的复制和集群,并利用Galera集群实现多主集群。

MariaDB为主终端用户提供与主从主复制和主从复制相同的复制和集群功能。它还使用10.1版以后的Galera Cluster。

5. 对数据库的支持:通过Oracle全天候提供MySQL技术支持服务,支持团队由专业开发人员和工程师组成,他们提供各种工具,如错误修复,修补程序和版本发布。Oracle根据用户的需求提供MySQL首要支持,扩展支持和持续支持。

MariaDB通过开源社区,在线论坛甚至通过专家为用户提供强有力的支持。MariaDB通过企业订阅提供24小时全天候支持,尤其适用于任务关键型生产系统。

6. 安全性:就安全性而言,MySQL为表空间数据提供了强大的加密机制。它提供了强大的安全参数,包括选择好的密码,不给用户不必要的特权,并通过防止SQL注入和数据损坏来确保应用程序安全。

MariaDB在内部安全和密码检查,验证模块(PAM)和轻量级目录访问协议(LDAP)认证,Kerberos,用户角色以及对表空间,表格和日志的强大加密等安全功能方面取得了重大进展。

7. 可扩展性:支持可扩展系统的数据库可以用许多不同的方式进行扩展,如添加新的数据类型,函数,运算符,聚集函数,索引方法和过程语言。MySQL不支持可扩展性。

MariaDB建立在现代架构的基础之上,可以在每一层 – 客户端,集群,内核和存储上进行扩展。这种可扩展性提供了两个主要优势。它允许通过插件实现持续的社区创新,这意味着可以通过MariaDB的可扩展架构集成各种存储引擎,如MariaDB ColumnStore或Facebook的MyRocks。此外,它使客户能够轻松配置MariaDB以支持从联机事务处理(OLTP)到联机分析处理(OLAP)的各种用例。

8. JSON支持: MySQL支持本地JSON数据类型,可以在JSON(JavaScript Object Notation)文档中高效地访问数据。与将JSON格式的字符串存储在字符串列中相比,JSON数据类型提供了以下优点:

自动验证存储在JSON列中的JSON文档。无效的文档会产生错误。
优化的存储格式:存储在JSON列中的JSON文档被转换为允许快速读取文档元素的内部格式。当服务器稍后必须读取以这种二进制格式存储的JSON值时,不需要从文本表示中解析该值。二进制格式的结构使服务器能够直接通过键或数组索引查找子对象或嵌套值,而无需读取文档中的所有值。
另一方面,MariaDB Server 10.2引入了一整套用于读写JSON文档的24个函数。另外,JSON_VALID函数可以与校验约束一起使用,而像JSON_VALUE这样的函数可以与动态列一起使用来索引特定的字段。

9. 授权许可: MySQL在GPL下以开放源代码提供代码,并以MySQL Enterprise形式提供非GPL商业分发选项。

MariaDB只能使用GPL,因为它的工作源于该许可条款下的MySQL源代码。

10. 性能: MariaDB通过MySQL的许多创新实现了同类最佳性能。其中包括线程池管理以最大限度地提高处理效率,以及InnoDB数据存储区内的碎片整理等广泛的优化功能。因此,当从InnoDB表中删除行时,可用空间立即可供操作系统使用。不需要将旧表中的数据复制到新表中,并且表空间中没有空闲。MariaDB还提供与引擎无关的表统计信息,以改善优化程序的性能,加快对表的大小和结构进行查询处理和数据分析。

如果没有这些增强功能,MySQL的性能就会下降。MySQL中的线程利用率是次优的,InnoDB表随着时间的推移变得碎片化,从而影响性能。

MariaDB与MySQL

以下几点突出了MariaDB的优缺点。

优点

MariaDB针对性能进行了优化,对于大型数据集,它比MySQL强大得多。从其他数据库系统可以优雅的迁移到MariaDB是另一个好处。

从MySQL切换到MariaDB相对容易,这对于系统管理员来说好像是一块蛋糕。

MariaDB通过引入微秒级精度和扩展用户统计数据提供更好的监控。

MariaDB增强了KILL命令,使您可以杀死用户的所有查询(KILL USER 用户名)或杀死查询ID(KILL QUERY ID query_id)。MariaDB也转而使用Perl兼容的正则表达式(PCRE),它提供比标准MySQL正则表达式支持更强大和更精确的查询。

MariaDB为与磁盘访问,连接操作,子查询,派生表和视图,执行控制甚至解释语句相关的查询应用了许多查询优化。

MariaDB纯粹是开源的,而不是MySQL使用的双重授权模式。一些仅适用于MySQL Enterprise客户的插件在MariaDB中具有等效的开源实现。

与MySQL相比,MariaDB支持更多的引擎(SphinxSE,Aria,FederatedX,TokuDB,Spider,ScaleDB等)。

MariaDB提供了一个用于商业用途的集群数据库,它也支持多主复制。任何人都可以自由使用它,并且不需要依赖MySQL Enterprise系统。

缺点

从版本5.5.36开始,MariaDB无法迁移回MySQL。
对于MariaDB的新版本,相应的库(用于Debian)不会及时部署,由于依赖关系,这将导致必需升级到较新的版本。
MariaDB的群集版本不是很稳定。
迁移到MariaDB的主要原因

首先,MariaDB提供了更多更好的存储引擎。NoSQL支持由Cassandra提供,允许您在单个数据库系统中运行SQL和NoSQL。MariaDB还支持TokuDB,它可以处理大型组织和企业用户的大数据。

MySQL的平常(和缓慢的)数据库引擎MyISAM和InnoDB已分别在MariaDB中由Aria和XtraDB取代。Aria提供了更好的缓存,这对于磁盘密集型操作来说是有所不同的。

MariaDB通过引入微秒级精度和扩展用户统计数据提供更好的监控。

MariaDB的最新功能(如GIS,动态色谱柱支持等)使其成为更好的选择。

MariaDB遵循良好的行业标准,同时发布安全公告和升级,并以正确的方式处理预发布的保密性和发布后的透明度。

这几天在帮助网友维护服务器的时候看到他们的网站居然有用MariaDB数据库的,我们一般的都是用的MySQL。当然目前大部分的程序也是都支持这两个数据库类型的,我们在搭建服务器WEB环境的时候也有看到可选择2个数据库,MariaDB和MySQL数据库哪个比较好?如果让我们安装的话到底选择哪个。

第一、MariaDB 数据库

MariaDB数据库,其实是我们常用的MySQL的一个分支,一直由开源设置维护升级,采用的是GPL授权许可,而且我们要知道MariaDB完全兼容MySQL,我们可以用作为MySQL的代替品。不过在存储引擎方面,使用XtraDB来代替MySQL的InnoDB。开始的时候,我们看到版本型号是同步的,但是现在版本高于MYSQL,它的版本号直接从10.0开始,以自己的步伐进行开发,当然,还是可以对MySQL完全兼容。在某些方面,确实可以看到MariaDB的数据特性、性能等都超越了MySQL。

第二、MySQL数据库

MySQL,是相当老的数据库类型,从MySQL 5.5发布,Oracle把InnoDB做成了MySQL默认的存储引擎,效率和存储性能提高很多,所以我们低配置服务器的话建议从5.5开始安装。目前,MYSQL版本已经升级到8.0版本,但是如果我们需要安装高级版本的话需要看自己的配置服务器和程序兼容性。

第三、MariaDB和MySQL选择哪个

根据趋势的话,我们一般用户可以用MySQL,但是如果我们追求性能的话,可以开始尝试MariaDB,毕竟MariaDB的开发灵活度已经受欢迎度已经和以前确实不同。我们可以从不同的项目试试然后对比,反正两者是可以切换的,都是没有问题。

1. 介绍

  • mariadb就是mysql的分支,因为mysql听说要收费了,有人写了一个开源,免费的mysql,起名叫mariadb,用法和mysql一模一样
  • 阿里云的yum仓库,和mariadb官方的yum仓库,其实就是两个不同的url,提供了2个不同的yum仓库。
  • 阿里云的yum仓库中,软件版本可能较低,不会实时的更新I如果选择的是阿里云的yum仓库。

2. 安装

  • 如果显示没有,换一下yum源即可
yum install mariadb-server  mariadb -y

3.初始化mysql

3.1 介绍

  • 在确认 MariaDB 数据库软件程序安装完毕并成功启动后请不要立即使用。为了确保数据 库的安全性和正常运转,需要先对数据库程序进行初始化操作。这个初始化操作涉及下面 5 个 步骤。
  • ➢ 设置 root 管理员在数据库中的密码值(注意,该密码并非 root 管理员在系统中的密 码,这里的密码值默认应该为空,可直接按回车键)。
  • ➢ 设置 root 管理员在数据库中的专有密码。
  • ➢ 随后删除匿名账户,并使用 root 管理员从远程登录数据库,以确保数据库上运行的业
  • 务的安全性。
  • ➢ 删除默认的测试数据库,取消测试数据库的一系列访问权限。
  • ➢ 刷新授权列表,让初始化的设定立即生效。

3.2 初始化

3.2.1 命令

# 确保mariadb服务器启动后,systemctl start  mariadb # 执行命令初始化(退出数据库执行)mysql_secure_installation

3.2.2 步骤

Enter current password for root (enter for none): Set root password? [Y/n] yNew password:Re-enter new password: Remove anonymous users? [Y/n] y Disallow root login remotely? [Y/n] n ... skipping. Remove test database and access to it? [Y/n] y Reload privilege tables now? [Y/n] y Thanks for using MariaDB!

4. mysql授权sql

4.1 命令介绍

mysql使用grant命令对账户进行授权,grant命令常见格式如下 grant 权限 on 数据库.表名 to 账户@主机名            对特定数据库中的特定表授权grant 权限 on 数据库.* to 账户@主机名              对特定数据库中的所有表给与授权grant 权限1,权限2,权限3 on *.* to 账户@主机名      对所有库中的所有表给与多个授权grant all privileges on *.* to 账户@主机名      对所有库和所有表授权所有权限

4.2 创建mysql普通用户并授权

生产环境里不会死磕root用户,为了数据库的安全以及和其他用户协同管理数据库,就需要创建其他数据库账户,然后分配权限,满足工作需求。MariaDB [(none)]> create user username@'%' identified by 'password';MariaDB [(none)]> use mysql;MariaDB [mysql]> select host,user,password from user where user='username'; 切换普通用户,查看数据库信息,发现无法看到完整的数据库列表[root@master ~]# mysql -uusername -p -h 127.0.0.1MariaDB [(none)]> show databases; 退出数据库,使用root登录,开始权限设置[root@master ~]# mysql -uroot -pMariaDB [(none)]> use mysql;##授予远程登录的权限MariaDB [(none)]> grant all privileges on *.* to username@"%" identified by 'password';MariaDB [mysql]> show grants for username@"%"; 移除权限MariaDB [(none)]> revoke all privileges on *.* from username@"%";

4.3 给root授权,使其可以远程登录

授予所有的库所有的表权限,给用户root,在任何主机上,密码是1grant all privileges on *.* to root@"%" identified by '1';# 刷新权限,立即生效flush privileges; # window上用root远程链接数据库mysql -uroot -p*** -h 10.0.0.100

5. mysql备份与恢复

mysqldump命令用于备份数据库数据(全部的数据库) p密码 不能有空格 windows上不用写路径,直接 > db.sql[root@master ~]# mysqldump -uroot -p1 --all-databases > /opt/db.sql # 单独导出一个数据库mysqldump -u root -p -B ob_crm > opt/crm.sql 			    进入mariadb数据库,删除一个db[root@master ~]# mysql -uroot -pMariaDB [(none)]> drop database s11; 进行数据恢复,吧刚才重定向备份的数据库文件导入到mysql中# 第一种在外部[root@master ~]# mysql -uroot -p < /tmp/db.sql# 第二种进入数据库source /opt/db.sql;

参考文章

https://blog.csdn.net/pengjianglilive/article/details/120693981

https://blog.csdn.net/qq_52385631/article/details/123878869

分类
未分类

电动车更换电池记录

2017年九月份大概 22.12.20 更换电池。服役五年多。行程12180公里。左右不是确数

2023年1月9日15:05:28 将近20天还是满电。骑行20公里左右。继续观察。

updata

12203公里.

昨天晚上充电 大概10个小时左右.回复到初始状态.充电前 电动车5个灯都亮.

2023年1月14日21:27:51