hive 学习系列二(数据库的创建删除修改) 拿走,不谢。
database
相当于一个目录或者命名空间,用来更好地进行表的管理
在hdfs 的目录位置大致如下:
[root@iZbp12vtv76y9q3d633bh6Z /]# hadoop fs -ls /user/hive/warehouse/
Found 14 items
drwxrwxrwx - admin supergroup 0 2018-04-16 11:14 /user/hive/warehouse/action.db
drwxrwxrwx - hdfs supergroup 0 2018-06-06 02:09 /user/hive/warehouse/clean.db
drwxrwxrwx - hdfs supergroup 0 2018-05-14 14:22 /user/hive/warehouse/da.db
drwxrwxrwx - admin supergroup 0 2018-06-06 11:25 /user/hive/warehouse/dimension.db
drwxrwxrwx - admin supergroup 0 2018-03-20 14:14 /user/hive/warehouse/dp_life
drwxrwxrwx - admin supergroup 0 2018-05-27 21:29 /user/hive/warehouse/dw.db
drwxrwxrwx - admin supergroup 0 2018-05-04 16:14 /user/hive/warehouse/emp
drwxrwxrwx - admin supergroup 0 2018-05-04 16:57 /user/hive/warehouse/fab_sama.db
drwxrwxrwx - admin supergroup 0 2018-06-06 01:50 /user/hive/warehouse/final.db
drwxrwxrwx - admin supergroup 0 2018-03-08 20:16 /user/hive/warehouse/label.db
drwxrwxrwx - admin supergroup 0 2018-06-05 16:51 /user/hive/warehouse/location.db
drwxrwxrwx - hdfs supergroup 0 2018-06-02 14:02 /user/hive/warehouse/ods.db
drwxrwxrwx - admin supergroup 0 2018-05-28 11:34 /user/hive/warehouse/pp_download.db
drwxrwxrwx - admin supergroup 0 2018-05-29 14:23 /user/hive/warehouse/yunong_test.db
[root@iZbp12vtv76y9q3d633bh6Z /]#
创建语法:
CREATE (DATABASE|SCHEMA) [IF NOT EXISTS] database_name
[COMMENT database_comment]
[LOCATION hdfs_path]
[WITH DBPROPERTIES (property_name=property_value, ...)];
DATABASE 和 SCHEMA 是一样的概念。
例子:
create database if not exists demo
comment 'demo db'
lacation '/user/hive/financials.db'
with with dbproperties('creator' = 'lidiliang', 'date' = '2018-05-15');
删除语法
DROP (DATABASE|SCHEMA) [IF EXISTS] database_name [RESTRICT|CASCADE];
注意,默认drop table 时候是restrict 的,即数据库里面存在表格的时候,如果删除,会报错。
需要强制删除,请加上cascade
修改
语法:
ALTER (DATABASE|SCHEMA) database_name SET DBPROPERTIES (property_name=property_value, ...);
-- (Note: SCHEMA added in Hive 0.14.0)
ALTER (DATABASE|SCHEMA) database_name SET OWNER [USER|ROLE] user_or_role;
-- (Note: Hive 0.13.0 and later; SCHEMA added in Hive 0.14.0)
ALTER (DATABASE|SCHEMA) database_name SET LOCATION hdfs_path;
-- (Note: Hive 2.2.1, 2.4.0 and later)
database 创建删除修改语句例子
hive> create database mydatabase; ## 创建数据库
hive> show databases; ## 展示数据库
OK
default
mydatabase
Time taken: 0.131 seconds, Fetched: 2 row(s)
hive> create database mydatabase; ### 如果数据库已经存在则会报错
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask.
Database mydatabase already exists
hive> create database if not exists mydatabase; ### 避免数据库已经存在的时候,提示数据库已经存在
OK
Time taken: 0.011 seconds
hive> show databases; ## 展示数据库
OK
default
mydatabase
Time taken: 0.008 seconds, Fetched: 2 row(s)
hive> create database if not exists helloworld; ## 创建数据库
OK
Time taken: 0.04 seconds
hive> show databases like ".*"; ## 展示数据库
OK
default
helloworld
mydatabase
Time taken: 0.014 seconds, Fetched: 3 row(s)
hive> show databases like "h.*"; ## 展示数据库
OK
helloworld
Time taken: 0.008 seconds, Fetched: 1 row(s)
hive> create database financails location 'user/hive/financials.db'; ## locaation 后面应该跟的是绝对路径
FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException(message:java.lang.IllegalArgumentException: java.net.URISyntaxException: Relative path in absolute URI: hdfs://localhost:9000./user/hive/financials.db)
hive> create database financails location '/user/hive/financials.db'; ## location 指定db 目录。
OK
Time taken: 0.037 seconds
hive> create database financailsv1 location '/ldl/hive/financialsv1.db'; ## 如果目录不存在会在hdfs 上进行自动创建
OK
Time taken: 0.035 seconds
hive> create database demo comment 'this is a demo databases'; ## 添加提示符号信息
OK
Time taken: 0.031 seconds
hive> describe database demo; ## 描述数据库创建信息
OK
demo this is a demo databases hdfs://localhost:9000/user/hive/warehouse/demo.db root USER
Time taken: 0.011 seconds, Fetched: 1 row(s)
hive> create database demov1 with dbproperties('creator' = 'lidiliang', 'date' = '2018-05-15');
OK #### 创建数据库的时候,指定额外的信息
Time taken: 0.049 seconds
hive> describe database demov1; ### 描述数据的创建流程
OK
demov1 hdfs://localhost:9000/user/hive/warehouse/demov1.db root USER
Time taken: 0.013 seconds, Fetched: 1 row(s)
hive> describe database extended demov1; ## 如果需要看到dbproperties 设置的信息,需要添加extended 信息。
OK
demov1 hdfs://localhost:9000/user/hive/warehouse/demov1.db root USER {date=2018-05-15, creator=lidiliang}
Time taken: 0.011 seconds, Fetched: 1 row(s)
hive> use default;
OK
Time taken: 0.037 seconds
hive> set hive.cli.print.current.db=true; ## 在当前命令行里面显示当前使用的数据库名称
hive (default)> use demov1;
OK
Time taken: 0.01 seconds
hive (demov1)> set hive.cli.print.current.db=false;
hive> drop database hehe; ## 删除数据库
FAILED: SemanticException [Error 10072]: Database does not exist: hehe
hive> drop database if exists hehe; ## 删除数据库,可以避免数据库不存在的时候的报错。
OK
Time taken: 0.005 seconds
hive> drop database if exists hehe cascade; ## 删除数据库的
##前提是数据库里面没有表格,如果有表格,则会报错,可以加上cascade 来进行新删除数据库里面的表格。
OK
Time taken: 0.005 seconds
## 以下是数据库修改
hive> alter database demov1 set dbproperties('edited-by' = 'lidiliang', 'edit-date'='2018-05-15-09-17');
OK
Time taken: 0.034 seconds
hive>
hive 学习系列二(数据库的创建删除修改) 拿走,不谢。的更多相关文章
- EF 学习系列二 数据库表的创建和表关系配置(Fluent API、Data Annotations、约定)
上一篇写了<Entity Farmework领域建模方式 3种编程方式>,现在就Code First 继续学习 1.数据库表的创建 新建一个MVC的项目,在引用右击管理NuGet程序包,点 ...
- MySQL学习(二)——SQL语句创建删除修改以及中文乱码问题
一.对数据库的操作 1.创建一个库 create database 库名; 创建带有编码的:create database 库名 character set 编码; 查看编码:show create ...
- MyBatis学习系列二——增删改查
目录 MyBatis学习系列一之环境搭建 MyBatis学习系列二——增删改查 MyBatis学习系列三——结合Spring 数据库的经典操作:增删改查. 在这一章我们主要说明一下简单的查询和增删改, ...
- scrapy爬虫学习系列二:scrapy简单爬虫样例学习
系列文章列表: scrapy爬虫学习系列一:scrapy爬虫环境的准备: http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_python_00 ...
- RabbitMQ学习系列二-C#代码发送消息
RabbitMQ学习系列二:.net 环境下 C#代码使用 RabbitMQ 消息队列 http://www.80iter.com/blog/1437455520862503 上一篇已经讲了Rabbi ...
- 图机器学习(GML)&图神经网络(GNN)原理和代码实现(前置学习系列二)
项目链接:https://aistudio.baidu.com/aistudio/projectdetail/4990947?contributionType=1 欢迎fork欢迎三连!文章篇幅有限, ...
- [转]ASP.NET MVC学习系列(二)-WebAPI请求 传参
[转]ASP.NET MVC学习系列(二)-WebAPI请求 传参 本文转自:http://www.cnblogs.com/babycool/p/3922738.html ASP.NET MVC学习系 ...
- .net reactor 学习系列(二)---.net reactor界面各功能说明
原文:.net reactor 学习系列(二)---.net reactor界面各功能说明 安装了.net reactor之后,可以在安装目录下找到帮助文档REACTOR_HELP.c ...
- Maven学习系列二(1-5)
Maven学习系列二(1-5) 本文转自 QuantSeven 博客,讲解精炼易懂,适合入门,链接及截图如下 http://www.cnblogs.com/quanyongan/category/47 ...
随机推荐
- uwsgi特性
uwsgi 特性 官网参考 X-Sendfile仿真 即使前端 代理/webserver 不支持X-Sendfile (或者不能访问静态资源),可以使用 uwsgi 内部的 offloading 来模 ...
- (三)svn 服务器端之创建仓库
创建仓库 svn服务端创建完成需要创建仓库,仓库中存放 要被管理的文件. 通过开始菜单进入 VisualSVN server manager: 主界面为: 右键点击Repositories创建仓库 ...
- java带jar包的命令行运行
运行有些java类需要第三方的jar包(lib),在用命令行运行时本人总结如下几个方法: 方法一.编译 javac -cp D:\lab\googleapi.jar Lab.java设置classp ...
- 再学UML-深入浅出UML类图(四)
实例分析1——登录模块 某基于C/S的即时聊天系统登录模块功能描述如下: 用户通过登录界面(LoginForm)输入账号和密码,系统将输入的账号和密码与存储在数据库(User)表中的用户信息进行比较, ...
- Sticky footers 套路
[CSS Secrets] http://shop.oreilly.com/product/0636920031123.do 以饿了么商家信息的弹出层为例,布局如下: <!-- 饿了么 弹出层部 ...
- 3.Zabbix 3.0 部署
请查看我的有道云笔记: http://note.youdao.com/noteshare?id=0139b8d2833129740be82e36a94e4fca&sub=5931260FCC8 ...
- CentOS7 查询已安装的包方便整理 /卸载
以PHP为例.首先查看已安装的PHP rpm -qa |grep php 输出结果: php-cli--.el7.x86_64 php-common--.el7.x86_64 查询rpm包的安装时间和 ...
- 长大DeepMind第一次团队作业
1.队名 长大DeepMind 2.队员风采 学号 姓名 擅长的技术 编程的兴趣点 希望承担的角色 一句话宣言 B20150304508 晏司举 JAVA,ssm框架,MySQL数据库 JAVA后台服 ...
- OAuth 2.0协议在SAP产品中的应用
阮一峰老师曾经在他的博文理解OAuth 2.0里对这个概念有了深入浅出的阐述. http://www.ruanyifeng.com/blog/2014/05/oauth_2_0.html 本文会结合我 ...
- 日期的压缩存储daybits
问题: 存储一个日期的序列,例如保存用户一年的登录时间序列,20140201,20130102这样两个日期,如果用INT那么需要八个字节,用STRING就更多了. 解决: 通过bit来存储一天,具体的 ...