自建mysql和华为云mysql_自建数据库和云数据库区别和使用(以MySQL为例)
在程序员这个群体中,多数人是从事应用开发,在应用开发中一定会跟数据打交道。很多程序员入门学习就是Mysql数据库,它不仅仅是找工作面试最常问的,也是干私活必备的数据库。当然在如今数字基建的背景下,云数据库应运而生,这是对开发人员很友好的一个存在,作为开发时不用过多关注数据库怎么搭建维护,只需要以最简单的方式使用好数据库,从而可以专注于应用的开发。
那么今天我就分享一下以自建Mysql数据库和云数据库的区别和使用,供学习工作参考使用。
【MySQL】
MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理。开源,免费。 世界上最流行的开源数据库系统,功能足够强大,足以应付web应用。使用C和C++编写,支持包括window,linux 在内的等多种操作系统上运行。支持多线程,充分利用CPU资源。提供TCP/IP、ODBC和JDBC等多种数据库连接途径。【来源百度百科】
【裸机linux搭建MySQL数据库】
前提:linux机器可以自己用VM创建一个虚拟机,但是我更推荐直接去华为云市场撸一台,毕竟828的福利不能错过。
本来我想用
现在就直接上手撸命令
1.找到mysql数据库yum源
wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
2.安装升级软件包
rpm -Uvh mysql57-community-release-el7-11.noarch.rpm
2.1查看yum源是否生效
yum repolist enabled | grep mysql
3.yum安装mysql 安装过程中需要下载时间比较长 (这个过程我用了一个多小时)
yum install mysql-community-server
中间提示选择y
4.服务启动
service mysqld start
4.1查看mysql服务
service mysqld status
5.查看初始密码(5.7默认不允许使用空密码登录)
cat /var/log/mysqld.log | grep 'A temporary password'
6.使用初始密码登录mysql
注意 u 和p 后面不能加空格,否则报错
mysql -uroot -p'临时密码'
登录完成后现在你做什么操作都会有下面的提示
You must reset your password using ALTER USER statement before executing this statement (使用数据库前必须重置密码)
7.修改初始密码(以下都是在数据库中操作,不是在linux 系统中。以mysql>开头的命令行操作)
密码为强密码
要求包含大小写字母、数字及特殊字符,长度在6位以上
ALTER user 'root'@'localhost' identified by 'Mlscoder@123.';
7.1 以后就可以使用新密码登录
mysql -uroot -p'Mlscoder@123.'
9.开启远程登录 mysql 默认只能本地localhost登录,增加远程登录的权限 (方便使用navicat等工具远程链接)
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'Mlscoder@123.' WITH GRANT OPTION;
9.1查看当前用户的相关信息
select User,Host,authentication_string from user;
10.创建数据库
create database myuser;
使用数据库
use myuser;
查看当前数据库中的所有表
show tables ;
11.创建表
create table user (
id int (10) not null AUTO_INCREMENT comment 'id',
name varchar (100) comment '姓名',
age int (3) comment '年龄',
address varcahr(255) comment '地址',
PRIMARY key (id)
)DEFAULT CHARSET=utf8mb4 comment '用户信息表' ;
11.1 查看表结构
desc user ;
12.表中插入数据
insert into user (id,name,age,address ) values (1,'张三',20,'上海市浦东新区') ;
12.1 查看表数据
select * from user ;
12.2 不指定id插入数据,在创建表DDL中,AUTO_INCREMENT 表示主键自增。
insert into user (name ,age ,address) values ('李四',25,'上海市徐汇区');
select * from user;
当然很少人会这样用数据库,即便是大佬,也是使用navicat、toad、PL/SQL等等一系列的数据库管理工具,当然一些并不是免费的。
整完了自己搞的,我们上手做一个云数据库吧,体验一把什么叫上云,也是拿华为云RDS来演示使用。
【华为云数据库RDS是啥】
华为云关系型数据库(Relational Database Service,简称RDS)是一种基于云计算平台的即开即用、稳定可靠、弹性伸缩、便捷管理的在线关系型数据库服务。通过华为云关系型数据库服务的管理控制台,用户几乎可以执行所有必需任务而无需编程,简化运营流程,减少日常运维工作量,从而专注于开发应用和业务发展。创建RDS实例后,您可以通过多种方式连接实例,连接后可以进行数据导入导出,以及创建数据库和帐户等操作。
行了废话不多说了,动手直接搭建一下。
前后从创建到可以使用也就2分钟,比起自己下载来快多了,其实也是依托着镜像容器来处理的,一个数据库实例放在一个容器中,这个在深一点就是高级运维工程师需要做的内容,容器集群的管理。
华为云的web在线数据管理页面感觉还是很大气的
然后我也是同样的新建一个user表,在操作mysql的数据库的时候都是执行的DDL或者DML语句,不管是在线管理还是客户端工具,可以协助生成SQL语句,不过像这种创建表的语句还是可以的设置的, 但是复杂的查询语句还是需要自己来写。
SQL的中文名叫结构化查询语言(Structured Query Language),不管是mysql、oracle还是sql server 都是用sql来搞。
换句话说, sql 跟Java、Python一样,也是一个语言。
通过生成的DDL语句,来执行操作,这个也比较简单。
但是让我比较中意的功能是SQL诊断和慢查询日志
我用之前做的一个项目的demo来演示一下什么叫SQL诊断。从我的本地库中导入云数据库一个数据库,因为是这个开发库,毕竟生产生的数据有些敏感,这里仅仅演示功能使用。
目标:用华为云数据库诊断一下我们上面的这个SQL 是否存在性能问题,以方便我们开发有针对性的优化这个问题哦
先把数据库结构和数据导入
之后进入到刚刚导入的库中,打开SQL 性能诊断,复制上刚刚的sql语句,提交诊断,很快就可以得到诊断结果。
看下图的相关结果:
在诊断结果中,有比较详细的优化的建议,简直是神器。
除此之外还有一个就是慢查询日志,这个功能在云DBA中,需要开启DAS收集慢日志的功能。
不过由于本身没有太多的生产数据,仅仅做下演示了。在日志收集上除了收集慢查询,还可以增加一下热点点击,比如像知道那个功能使用的多,那个查询最频繁,知道用户的用为,反馈到运营上,更有针对的对产品做出优化。
【总结】
在使用和操作上,云数据库在快速搭建上有着不可比拟的优势,主要是依托于镜像容器的解决方案实现秒级搭建,从设置到使用,前后不过1分钟,极大的减少了开发人员的在数据库上搭建的时间。其次便捷的web操作界面、SQL诊断、慢查询日志等在分析,为企业级别开发也是如虎添翼。同时,减少了自购服务器的繁琐和成本,本身具有的弹性伸缩的特点,保障了日后业务增长可能需要的快速扩容,成为企业用户或者个人开发者的一个不错的选择。
自建mysql和华为云mysql_自建数据库和云数据库区别和使用(以MySQL为例)相关推荐
- c 访问阿里云mysql_本地怎样访问阿里云mysql数据库服务器
全网最新活动请看下方内容或右侧内容! --------------- 本地怎样访问阿里云mysql数据库服务器,在阿里云上放数据库. 对于大多数小型或初期项目来说,我们可能常用的做法是先将web.数据 ...
- 无法连接腾讯云mysql_本地连接腾讯云Mysql失败问题
腾讯云主机中MySQL无法远程连接的解决办法 在远程主机上,我开启了 mysql服务,用 phpmyadmin 可以打开,比如说用户名为 root,密码为 123456.不过用 Mysql 客户端远程 ...
- 以云数据库MySQL为例深入分析对比:华为云更安全还是腾讯云更安全?
前言 日新月异的今天,互联网,云计算已经被广泛的应用到生活的方方面面上.对个人而言,我们时时刻刻都需要从网络获取信息,在网上冲浪.而对于企业而言,数据上云,应用上云已经成了一个不可逆的趋势. 而华为云 ...
- MySQL与CVM自建数据库优势_UCloud云数据库MySQL产品优势及与自建数据库对比
前文,我们了解过UCloudy优刻得云数据库活动<云数据库有什么用?UCloud海外MySQL云数据库促销最低5折>,以及产品介绍<什么是云数据库?云数据库机型版本和产品架构介绍&g ...
- UCloud云数据库MySQL产品优势及与自建数据库对比
UCloud云数据库MySQL产品优势及与自建数据库对比 前文,我们了解过UCloudy优刻得云数据库活动<云数据库有什么用?UCloud海外MySQL云数据库促销最低5折>,以及产品介绍 ...
- 华为云mysql怎么玩_7天搞定MySQL!华为云新推精品课程了解一下
众所周知,MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),因为其速度.可靠性和适应性而备受关注,MySQL规模小,功能有限,但是它体积小.速度快.成本低,且它提供的功能对稍微复杂的应用 ...
- mysql精品课程网_7天搞定MySQL!华为云新推精品课程了解一下
众所周知,MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),因为其速度.可靠性和适应性而备受关注,MySQL规模小,功能有限,但是它体积小.速度快.成本低,且它提供的功能对稍微复杂的应用 ...
- 腾讯云安装mysql_详解腾讯云CentOS7.0使用yum安装mysql及使用遇到的问题
背景: 今天才申请了腾讯云+校园计划的1元服务器,安装了Centos7.0,在安装MySQL的时候,使用yum list | grep mysql 来查找yum源中是否有mysql,结果如下: [ro ...
- 腾讯云 yum mysql_详解腾讯云CentOS7.0使用yum安装mysql及使用遇到的问题
背景: 今天才申请了腾讯云+校园计划的1元服务器,安装了Centos7.0,在安装MySQL的时候,使用yum list | grep mysql 来查找yum源中是否有mysql,结果如下: ?[r ...
最新文章
- 编码能力的提升?_20131228
- C++语言基础 例程 文本文件的读写
- python中的json注意事项
- eclipse注释日期格式修改
- [vue] axios是什么?怎样使用它?怎么解决跨域的问题?
- 前端学习(1043):回车把数据存储到本地存储里面
- html响应式五栏布局,HTML – 响应式2列CSS布局,包括固定宽度的侧边栏?
- 红橙Darren视频笔记 手写ButterKnife(Android Studio4.2.2 gradle-6.7.1 )
- Python bcrypt 加密验证密码
- Perl语言必看书籍推荐
- matlab实现移位寄存器,Matlab移位寄存器的实现
- Autel Maxisys Elite Common FAQs
- Java耗时打印工具类
- Appium+python自动化(六)- 连接模拟器并启动淘宝APP(超详解)
- 设计一个学生类Student
- CCS 修改字体大小
- 学习opencv.js(1)图像入门
- excel切片器_大部分人都不知道Excel切片器还能这么用,建议收藏
- 记一次生产大对象导致的OOM让架构师连夜排查解决
- 2 Robotics: Computational Motion Planning 第2+3+4周 课后习题解答
热门文章
- mac txt 换行符_推荐两款免费的网页代码编辑器(Win和Mac系统)
- 生信分析-PS修改坐标
- 临床基因组学数据分析实战助力解析Case,快速发表文章
- MPB:北林张静等-丛枝菌根真菌(AMF)孢子、菌丝密度及侵染率定量测定方法
- 211.Alpha多样性箱线图(样章,11图2视频)
- 研究生,导师不是你的保姆……
- Nature子刊:南土所贾仲君组-稻田甲烷氧化的微生物机制
- 微生物常见20种培养基配方
- Annu. Rev. Genet:植物微生物组——系统性见解与展望
- linux基于此语言的密码,一次有趣的Linux下.Net Core与C语言的合作开发体验:生成Linux标准的用户密码串...