当前位置: 首页 > 编程日记 > 正文

Hadoop集群的基本操作(三:HBase的基本操作)

实验

目的

要求

目的:

  1. MySQL数据库的基本命令;
  2. MySQL数据库中使用SQL语句;
  3. MySQL数据库中数据库,表,数据的操作;

要求:

  1. 完成MySQL的集群版的安装;
  2. MySQL集群的相关服务进程能够正常启动;
  3. MySQL集群的SQL服务能够作为系统服务开机自动启动;
  4. MySQL客户端能够远程连接MySQL集群的SQL服务;
  5. MySQL集群的SQL服务能够远程链接访问;
  6. 创建表、查询数据等数据库操作能够正常进行;
  7. MySQL集群的数据库数据能够在多个SQL服务节点之间实现同步;
  8. MySQL数据库的基本命令和SQL语句的使用;
  9. 正确完成练习内容;

  1. 五台独立PC式虚拟机;
  2. 主机之间有有效的网络连接;
  3. 每台主机内存2G以上,磁盘50G;
  4. 所有主机上安装CentOS7-64位操作系统;
  5. 所有主机已完成静态网络地址、主机名、主机地址映射的配置;
  6. 已完成MySQL数据库平台的搭建;
  7. 在安装MySQL服务节点的PC机或者虚拟机操作;

软件版本:

选用MySQL Cluster的7.5.7版本;

集群规划:

* MySQL数据库的集群版本有管理节点、 数据服务节点、 SQL服务节点总共3类服务节点, 集群中要求至少一台单独的主机作为管理节点, 而集群模式需要满足数据有备份和数据处理能够分布并行的基本要求, 所以需要两台或以上的主机作为数据服务节点以及两台或以上的主机作为SQL服务节点, 具体规划如下:

主机名

IP地址

服务描述

Cluster-01

192.168.10.111

MC管理节点

Cluster-02

192.168.10.112

MC数据服务节点

Cluster-03

192.168.10.113

MC数据服务节点

Cluster-04

192.168.10.114

MC SQL服务节点

Cluster-05

192.168.10.115

MC SQL服务节点

练习内容

步骤一:启动MySQL

1、启动管理节点;

2、启动数据服务节点;

3、启动SQL服务节点;

练习一:表的创建、插入数据;

1、创建一个数据库;

2、创建一个mytable表并显示表结构;

3、向表中插入一条记录;

4、查找表中已存在的数据;

练习二:将TXT文件导入表中;

1、在home目录下创建mysql.txt文件,并写入数据;

2、给数据库导入TXT文件数据;

命令:

>load data local infile "/home/mysql.txt" into table mytable fields terminated by '\t' lines terminated by '\n';

3、在MySQL连接工具中查看插入数据;

练习三:SQL查询语句;

1、查看表结构;

2、查询所有列及指定列;

3、查询指定行;

作业一:数据库基本操作

根据下列表格中所提供的关系型数据库的数据模型和数据,在MySQL数据库中创建和添加相应的数据库、表、数据。

书籍信息表(BOOK_INFO)

Title

Borrower

sex

Munber

lendingdate

Returndate

Yuncunchu

Zhangsan

f

20170001

2017-09-09

2017-09-09

Shujuku

Lisi

m

20170002

2017-09-09

2017-09-09

xunihuajishu

wanger

f

20170003

2017-09-09

2017-09-09

1、创建work数据库并插入数据;

2、查看插入数据;

3、指定行列查看数据;

4、使用连接工具查看数据;

作业二:将作业一常见的数据库机器中的数据导出为SQL脚本文件;

1、导出数据;

2、查看导出文件;

出现的问题与解决方案

本实验未遇到错误,介绍几个排错技巧:

1、一般,报错的时候都会有error code。比如ERROR 1504,Error: 2303等等,遇到这些报错,我们可以先用mysql的报错工具perror查看,比如查看报错号为1504的错误,使用命令为: perror --ndb 1504

2、在出现报错以后,查看WARNINGS或ERRORS信息,比如出现Error CODE : 1528 Failed TO CREATE LOGFILE GROUP后输入SHOW WARNINGS;,会显示出具体的报错信息:

  Got error 1504 'Out of logbuffer memory' FROM NDB

  Failed TO CREATE LOGFILE GROUP

以上报错代码,均可在官网找到解决方案。

知识拓展

1、MySQL集群优缺点;

优点:

a) 99.999%的高可用性

b)快速的自动失效切换

c)灵活的分布式体系结构,没有单点故障

d)高吞吐量和低延迟

e)可扩展性强,支持在线扩容

缺点:

a)存在很多限制,比如:不支持外键

b)部署、管理、配置很复杂

c)占用磁盘空间大,内存大

d)备份和恢复不方便

e)重启的时候,数据节点将数据load到内存需要很长时间

2、MySQL集群如何存储数据;

a)Master执行提交语句时,事务被发送到slave,slave开始准备事务的提交。

b)每个slave都要准备事务,然后向master发送OK(或ABORT)消息,表明事务已经准备好(或者无法准备该事务)。

c)Master等待所有Slave发送OK或ABORT消息

  • 如果Master收到所有 Slave的OK消息,它就会向所有Slave发送提交消息,告诉Slave提交该事务;
  • 如果Master收到来自任何一个Slave的ABORT消息,它就向所有 Slave发送ABORT消息,告诉Slave去中止事务。

e)每个Slave等待来自Master的OK或ABORT消息。

  • 如果Slave收到提交请求,它们就会提交事务,并向Master发送事务已提交 的确认;
  • 如果Slave收到取消请求,它们就会撤销所有改变并释放所占有的资源,从而中止事务,然后向Masterv送事务已中止的确认。

f)当Master收到来自所有Slave的确认后,就会报告该事务被提交(或中止),然后继续进行下一个事务处理。

3、使用SQLyog连接MySQL集群192.168.10.114或者192.168.10.115

4、MySQL常用的相关命令

  • 登录数据库--mysql -u root -p
  • 远程登录数据库--mysql -h 主机名或IP地址 -u 用户名 -p
  • 导出数据库--mysqldump -u 用户名 -p 数据库名>导出的路径与导出的文件名:mysqldump -uroot -pmysqlabc mysql>/home/123.sql
  • 导出数据库中的指定表--mysqldump -u 用户名 -p 数据库名 表名>导出的路径与导出的文件名
  • 导出数据库的结构信息--mysqldump -u 用户名 -p -d --add-drop-table 数据库名>导出的路径与导出的文件名
  • 恢复数据库--mysqldump -u 用户名 -p 数据库名< 需要导入的文件名和路径
  • 在登录数据库后,使用source语句进行数据库恢复--use bb;source /home/123.sql;(2)Mysql 控制台命令
  • 设置密码--set password=password;
  • 创建数据库--create database abcDB;
  • 添加新用户  host:%; user:abc; password:1234;Grant all on abcDB.*to ‘abc’@’%’identified by ‘1234’with grant option;
  • 为用户授权“grant 权限 on 数据库名.表名 to 用户名@登录主机名IP地址 identified by ’自定义密码‘;”。--grant all on test.*to abc@’@’identified by ‘1234’
  • 刷新权限信息--flush privileges;
  • 查询用户信息--select user,host,authentication_string from mysql.user;
  • 显示数据库列表--show databases;
  • 删除数据库--drop database 数据库名;
  • 使用数据库--use 数据库名;
  • 删除用户--delete from user where user=’abc’and host=’%’;
  • 显示数据表列表--show tables;
  • 显示数据表详细描述信息--describe 表名;显示用户表信息--describe user;

相关文章:

iOS通过Plist保存离线调试日志

最近需要测试APP在iPhone没连接USB情况下定位时间间隔的情况&#xff0c;固把nslog的日志信息保存成本地Plist文件&#xff0c;以便测试结束后查阅运行时的日志。 一、新建一个保存日志的方法&#xff0c;参数为每次定位成功的时间&#xff08;作为key&#xff09;&#xff0c…

关于变量名前面加m的问题

为什么很多人写代码会在变量名前面加一个小写的m&#xff1f; 上大学那会儿就对这个问题感到很好奇。于是网上到处搜&#xff0c;有人说是member的意思。于是后来一直就这么认为。 最近在读Android源码&#xff0c;发现很多系统变量命名时都加了m&#xff0c;而有的变量又没有加…

谷歌推出情境感知API

在 Google I/O 2016 大会上&#xff0c;我们宣布推出新的 Google Awareness API&#xff0c;让您的应用可以利用快照和围栏智能应对用户情境&#xff0c;并且仅需占用极少量的系统资源。 所有开发者均可以通过 Google Play 服务获取 Google Awareness API。 利用 7 种不同类型的…

Hadoop集群的基本操作(四:Hive的基本操作)

实验 目的 要求 目的&#xff1a; &#xff08;1&#xff09;掌握数据仓库工具Hive的使用&#xff1b; 要求&#xff1a; 掌握数据仓库Hive的使用&#xff1b;能够正常操作数据库、表、数据&#xff1b; 实 验 环 境 五台独立PC式虚…

【转】通过Hibernate将数据 存入oracle数据库例子

一、 Hibernate介绍 Hibernate是基于对象/关系映射&#xff08;ORM&#xff0c;Object/Relational Mapping&#xff09;的一个解决方案。ORM方案的思想是将对象模型表示的对象映射到关系型数据库中&#xff0c;或者反之。Hibernate目前是ORM思想在Java中最成功、最强大的实现。…

自动布局按钮排列平均分布

需要实现如下图所示的主页面布局&#xff0c;需要两排按钮&#xff0c;每一排都自动平均分布&#xff0c;Android的话直接用LinearLayout水平布局&#xff0c;并设置layout_weight即可&#xff0c;对于iOS&#xff0c;网上有使用代码实现&#xff0c;感觉略麻烦&#xff0c;我直…

maven3 手动安装本地jar到仓库

安装命令&#xff1a; mvn install:install-file -Dfile{Path/to/your/ojdbc.jar} -DgroupIdcom.oracle -DartifactIdojdbc6 -Dversion11.2.0 -Dpackagingjar我自己安装oracle14.jar 时命令如下&#xff1a;mvn install:install-file -DgroupIdcom.oracle -DartifactIdojdbc14 …

Hadoop集群的基本操作(五:Sqoop的基本操作)

实验 目的 要求 目的&#xff1a; 掌握ETL工具Sqoop的使用&#xff1b;掌握MySQL和HDFS之间的数据转换&#xff1b;要求&#xff1a; 掌握ETL工具Sqoop的使用&#xff1b;能够正常操作数据库、表、数据&#xff1b; 实 验 环 境 五台…

NEWS - InstallShield 2013 SP1发布

2013的这个国庆假期期间&#xff0c;InstallShield厂商Flexerasoftware&#xff08;中文名&#xff1a;福莱睿&#xff09;发布了最新版本InstallShield 2013的SP1&#xff0c;由于这个升级包带来一些新的技术支持和变化&#xff0c;所以特地给大家介绍一下&#xff1a; 1. 支持…

iOS 高德导航按返回后报错 解决

最近项目要添加导航功能&#xff0c;用了高德导航SDK&#xff0c;很郁闷每次从地图界面返回前一页面都报错&#xff0c;弄了很久&#xff0c;最终从高德开发者论坛找到一解决方法&#xff0c;可以试一下。 在导航的ViewController的viewWillDisappear中调用如下方法&#xff0…

Oracle的基本操作(一:子查询与常用函数)

1、描述TO_CHAR和TO_DATE函数的用法。 TO_CHAR&#xff08;d|n[,fmt]):把日期和数字转换为指定格式(fmt)的字符串; TO_DATE(x[,fmt]):把一个字符串一fmt格式转换为一个日期类型&#xff1b; 举例&#xff1a;select to_char(sysdate,yyyy-mm-dd) "char", to_date(…

易买网的一些增删改查

正如题目所说的一样,今天就来说说易买网中的一些增删改查,主要的功能有注册、用户管理以及商品分类等&#xff01; 1.注册 1.1 注册涉及到了一个ajax远端技术,主要是用来控制注册用户在数据库中是否存在&#xff1a; <script>$(function(){//焦点移出表单时$("#user…

iOS后台持续定位并定时上传

最近做一个考勤APP&#xff0c;功能很简单&#xff0c;就是一直在后台运行&#xff0c;每隔固定时间向服务器上传一次位置信息。持续运行24小时测试&#xff0c;功能实现。 1.ViewController.h文件&#xff1a; #import <CoreLocation/CoreLocation.h>并实现CLLocationMa…

jQuery UI vs Kendo UI jQuery Mobile vs Kendo UI Mobile

jQuery UI vs Kendo UI http://jqueryuivskendoui.com/#introduction jQuery Mobile vs Kendo UI Mobile http://jqueryuivskendoui.com/#mobile-introduction Kendo UI教程 http://www.cnblogs.com/pangblog/archive/2013/09/10/3313135.html转载于:https://www.cnblogs.com/j…

Oracle的基本操作(二:存储过程)

1、编写一个存储过程&#xff0c;根据输入的工作类型&#xff0c;输入该工作的平均工资。 -- Created on 2018/9/30 by YANXUKUNcreate or replace procedure avgsal(v_job in scott.emp.job%type)isavgsal2 number;beginselect avg(sal) into avgsal2 from scott.emp where j…

web11 Struts处理表单数据

电影网站&#xff1a;www.aikan66.com 项目网站&#xff1a;www.aikan66.com 游戏网站&#xff1a;www.aikan66.com 图片网站&#xff1a;www.aikan66.com 书籍网站&#xff1a;www.aikan66.com 学习网站&#xff1a;www.aikan66.com Java网站&#xff1a;www.aikan66.co…

瀑布流开源这两天

想必第一眼看到 Masonery 效果的人们会和当初的我有同样的感觉&#xff0c;惊艳&#xff01;尤其是在你双击浏览器标题栏的空白处之后&#xff0c;所有的区块都在默默寻找自己的位置&#xff0c;无论大小&#xff0c;就像上海虹桥火车站涌入地铁的人群。和技术实现无关&#xf…

iOS网络请求总结

*说明&#xff1a;文章中HTTP为宏定义的http地址&#xff0c;事例通过app_login.action的接口&#xff0c;通过传递policyNum、plateNum、phoneNum三个参数进行登录操作 一、方法1&#xff1a; Foundation框架 NSURLConnection &#xff08;1&#xff09;同步请求&#xff1a;同…

MongoDB数据库(一:基本操作)

1、创建名称为自己姓名拼音缩写的数据库&#xff1b; 2、创建名为姓名拼音缩写col的集合&#xff0c;如dugncol&#xff1b; 3、删除2中的集合&#xff0c;重新创建格式如dugncolnew的集合&#xff1b; 4、在3创建的集合中&#xff0c;插入10条文档数据&#xff0c;要求分别插入…

NYOJ--811--变态最大值

/*Name: NYOJ--811--变态最大值Author: shen_渊 Date: 17/04/17 15:49Description: 看到博客上这道题浏览量最高&#xff0c;原来的代码就看不下去了 o(╯□╰)o */#include<cstring> #include<iostream> #include<algorithm> using namespace std; struct…

扩展的八皇后问题

百度百科&#xff1a;八皇后问题是一个古老而著名的问题&#xff0c;是回溯算法的典型案例。该问题是国际西洋棋棋手马克斯贝瑟尔于1848年提出&#xff1a;在8X8格的国际象棋上摆放八个皇后&#xff0c;使其不能互相攻击&#xff0c;即任意两个皇后都不能处于同一行、同一列或同…

C++ 常用函数方法

/* * 拆分字符串 * 参数&#xff1a; * strData 字符串 * split 分隔符 * 返回&#xff1a; * 返回动态数组std::vector<std::string> ,记得要delete 内存 */ std::vector<std::string>* GetStringArray(char* strData,char* split)…

MongoDB数据库(二:高级操作)

练习一、完成使用Java代码连接MOngoDB&#xff0c;创建集合&#xff0c;获取集合&#xff0c;插入文档&#xff0c;检 索所有文档&#xff0c;更新文档&#xff0c;删除第一个文档。 a&#xff09;连接MOngoDB b)创建集合 c)获取集合 d)插入文档 e)检索所有文档 f)更新文档 g)…

将XML转为HTML

文章参考&#xff1a;http://dreamweaver.abang.com/od/html/a/xml2html3.htm http://www.w3school.com.cn/xml/xml_xsl.asp ParseXML2HTML.xsl&#xff1a;代码如下 1 <?xml version"1.0" encoding"utf-8"?> 2 <xsl:styleshee…

Linux运维相关目录

Linux——相关运维配置文档目录 tcp 三次握手yum 配置你对linux了解多少&#xff0c;Linux 系统结构详解&#xff01;Linux LAMP环境搭建Centos6.7安装Apache2.4Mysql5.6Apache2.4Linux搭建DNS服务器Nginx概念及基础安装--详细讲解深入NginxNginx的继续深入&#xff08;日志轮询…

iOS8底部弹出日期选择或自定义选择器的方法

本文需要实现的日期选择器和自定义选择器效果如下&#xff1a; 在iOS8之前&#xff0c;可以通过UIActionSheet来实现&#xff0c;在iOS8之后&#xff0c;可以通过UIAlertController实现&#xff0c;UIAlertController的官方解释如下&#xff1a; A UIAlertController object d…

HDFS_API基本应用

实验 目的 要求 目的&#xff1a; 了解HDFS文件系统&#xff1b;掌握HDFS的架构及核心组件的职能&#xff1b;掌握HDFS数据的读写操作&#xff1b;HDFS常用操作&#xff08;Shell。Java API&#xff09;了解Hadoop2.0中HDFS相关的新特性 实 验 环 境 Java jdk 1.8&…

Docker 清理命令集锦

杀死所有正在运行的容器 复制代码代码如下:docker kill $(docker ps -a -q)删除所有已经停止的容器 复制代码代码如下:docker rm $(docker ps -a -q)删除所有未打 dangling 标签的镜像 复制代码代码如下:docker rmi $(docker images -q -f danglingtrue)删除所有镜像 复制代码代…

CentOS 6.4下编译安装MySQL 5.6.14

概述&#xff1a; CentOS 6.4下通过yum安装的MySQL是5.1版的&#xff0c;比较老&#xff0c;所以就想通过源代码安装高版本的5.6.14。 正文&#xff1a; 一&#xff1a;卸载旧版本 使用下面的命令检查是否安装有MySQL Server rpm -qa | grep mysql 有的话通过下面的命令来卸载掉…

iOS实现图片自动轮播展示

一、需要实现的效果如下图1&#xff0c;首页图片自动轮播展示&#xff0c;其中图片从网络异步加载&#xff0c;加载过程用风火轮显示加载中&#xff0c;如图2。 本文参考了以下博客文章&#xff1a; http://www.haodaima.net/art/2687144 http://www.cnblogs.com/xiaobaizhu/a…