DB2 执行SQL报错: DB2 SQL Error: SQLCODE=-1585, SQLSTATE=54048

你建的db2数据库没有建足够大的临时表空间,新建一个足够大的临时表空间

1.创建数据库

db2 "create database testdb automatic storage yes on /dbauto dbpath on /database using codeset UTF-8 territory cn collate using system"

dbpath on 表示数据库目录 using codeset   XXXX terriory XXX 指定数据库编码集和区域

1.1显示实例下创建的数据库

db2 list db directory

2.数据库连接

db2 connect to testdb

3.创建缓冲池

db2 "create bufferpool bp32k size 10000 pagesize 32k"   size表示页数,pagesize表示页大小,size*pagesize就是缓冲池的内存大小

4.创建数据库管理(DMS)的数据表空间

db2 "create large tablespace tbs_data pagesize 32k managed by database using (file '/data1/tbs_data/cont0' 100M, file '/data1/tbs_data/cont1' 100M) extentsize 32 prefetchsize automatic bufferpool bp32k no file system caching"

5.创建系统管理(SMS)的临时表空间

db2 "create temporary tablespace tbs_temp pagesize 32k mamaged by system using  ('/data1/tbs_temp')  bufferpool bp32k"

using 指定表空间的容器,SMS支持的容器类型只是目录

6.创建(SMS)管理的用户临时表空间

db2 "create user temporary tablespace tbs_user_temp pagesize 32k managed by system using ('/data1/tbs_usertemp') bufferpool bp32k"

7.创建自动存储管理(Automatic Storage)的表空间

7.1 db2 "create tablespace tbs_index pagesize 32k bufferpool bp32k"

7.2 db2 "create tablespace tbs_data2 initialsize 100M increasesize 100M maxsize 1000G"

只有建库时启用了automatic storage yes,表空间才支持自动存储管理

8.显示每个表空间核心信息

db2 list tablespaces

8.1显示指定表空间相关信息

db2 list tablespace containers for <tablespace_id> show detail

8.2比list tablespaces更详细的显示表空间信息

db2 get snapshot for tablespaces on <db_name>

9.显示表空间的配置信息,使用情况和容器信息

db2pd -d <db_name> tablespaces

10.表空间容器的更改

10.1alter tablespace <db_name> add/drop/extend/reduce/resize

//add和drop操作,表空间会发生数据重新平衡(rebalance),对于reduce和resize操作,需要确保更改后的表空间容器有足够的空间,否则db2会拒绝该操作。

10.2alter tablespace <db_name> begin new stripe set

//begin new stripe set 选项是当已有容器使用完后,再使用新增加的容器,该选项不会在容器间做Rebalance ,不会对系统造成性能影响,但它会造成数据偏移。

使用方法:db2 "db2 alter tablespace data_ts2 add(file '/data1/ts2/cont2' 50G)"

10.3db2 alter database db_name add storage on db_path3

//对于自动存储管理的表空间,无法在表空间级进行容器更改,只能在数据库级别,因为自动存储路径是在建库时指定的。可以使用add storage on 选项为数据库添加新的存储路径。

建库脚本:

DB2安装默认用户:
db2inst1
db2iadm1 第一步新建用户,添加至DB2用户,并切换至新建用户
----------------------------------------------------------------------------------
[root@localhost ~]# useradd -g db2iadm1 -u 1017 -d /usr/slsadmin -m slsadmin
[root@localhost ~]# passwd slsadmin
[root@localhost ~]# ####slsadmin789 [root@localhost ~]# cd /opt/ibm/db2/V10.5/instance/
[root@localhost instance]# ./db2icrt -u slsadmin slsadmin
[root@localhost instance]# su - slsadmin
------------------------------------------------------------------------------------
设置环境配置,允许远程TCP/IP访问。此处数字为端口号,需要用vi去etc/services中查找此用户的最小的端口号
------------------------------------------------------------------------------------
[slsadmin@localhost ~]$ db2 update dbm cfg using SVCENAME 60012
[slsadmin@localhost ~]$ db2set DB2COMM=TCPIP
[slsadmin@localhost ~]$ db2
----------------------------------------------------------------------------------
启动db2命令窗
----------------------------------------------------------------------------------
db2 => db2start
db2 => create db faldb using codeset GBK territory CN
db2 => list db directory
db2 => connect to faldb --db2 => CREATE SCHEMA "hbreport" AUTHORIZATION "hbreport" --size表示页数,pagesize表示页大小,size*pagesize就是缓冲池的内存大小
db2 => create bufferpool poolname immediate size 10000 pagesize 32k --创建数据库管理(DMS)的数据表空间
db2 => create tablespace faldb pagesize 32k managed by system using ('/usr/slsadmin/NODE0000/sqlt0003.0') bufferpool poolname
db2 => create temporary tablespace faldb_temp pagesize 32k managed by system using ('/usr/slsadmin/NODE0000/faldb_temp') bufferpool poolname db2 => commit work
db2 => connect reset
db2 => terminate 执行建库SQL语句
----------------------------------------------------------------------------------
[slsadmin@localhost ~]$ db2 -tvf /home/WGJ/faldb20160215.sql
[slsadmin@localhost ~]$ db2move faldb import -u slsadmin -p slsadmin789 一定要关闭防火墙! 导出数据库
----------------------------------------------------------------------------------
[slsadmin@localhost ~]$ db2look -d faldb -e -a -x -i slsadmin -w slsadmin789 -0 faldb20160215.sql #导出数据库结构
[slsadmin@localhost ~]$ db2move faldb export -u slsadmin -p slsadmin789 #导出数据库数据

DB2 SQL Error: SQLCODE=-1585, SQLSTATE=54048的更多相关文章

  1. DB2 SQL Error: SQLCODE=-803, SQLSTATE=23505, SQLERRMC=2 (转载)

    http://blog.csdn.net/xiyuan1999/article/details/5706230 DB2 SQL Error: SQLCODE=-803, SQLSTATE=23505, ...

  2. DB2 SQL Error: SQLCODE = -798, SQLSTATE = 428C9

    DB2 SQL Error: SQLCODE = -798, SQLSTATE = 428C9报错是因为 , 你往设置了ALWAYS自增的列里面插了初始值 . ALWAYS自增设置如下. -- 设置主 ...

  3. DB2 SQL error: SQLCODE: -668, SQLSTATE: 57016, SQLERRMC: 3

    在对表load数据之后,表出现如下错误: DB2 SQL error: SQLCODE: -668, SQLSTATE: 57016, SQLERRMC: 3; 错误解释:表处于"装入暂挂& ...

  4. com.ibm.db2.jcc.am.SqlSyntaxErrorException: DB2 SQL Error: SQLCODE=-418, SQLSTATE=42610, SQLERRMC=null

    写了一条sql,在db2数据库中可以执行,但是转换成mybatis的mapper文件后,在执行排序操作时报该错误. 我排序是这样写的 <if test="orderStr != nul ...

  5. 【DB2】设置表不记录日志,但是回滚导致表不可用报错:DB2 SQL Error: SQLCODE=-1477, SQLSTATE=55019, SQLERRMC=LEN.TMP;5;3, DRIVER=3.57.82

    今天在生产发现个问题,很多表报错:SQLCODE=-1477 后来线下模拟出这种场景 出现这个问题,此时对表做reorg.runstats都是无效的. 那么怎么来解决这个问题呢? 只能重建表解决问题

  6. DB2 SQL Error: SQLCODE=-668, SQLSTATE=57016错误解决方法

    这个错误是:表处于"装入暂挂"状态. 经多次尝试 总结方法: 1:reorg table <表>: 假如不好使 则下面方法 2,先前尝试装入(LOAD)此表失败.表的状 ...

  7. DB2 SQL Error: SQLCODE=-805, SQLSTATE=51002 解决方法

    在操作大量数据时如果发生这种错误,说明不是db2 使用的 package没有绑定,而是 因为资源未释放,导致可以使用此package的资源不足,致使不能连接资源. 在程序中,对PreparedStat ...

  8. DB2 Error : SQLCODE=-802,SQLSTATE=22003 异常的原因

    使用DB2时,报错为 DB2 Error : SQLCODE=-802,SQLSTATE=22003 主要原因: 是我们sql语句使用某个字段*86400后结果非常大,导致无法返回结果:因为某个字段* ...

  9. IBM DB2 SQL error code list

    SQL return codes that are preceded by a minus sign (-) indicate that the SQL statement execution was ...

随机推荐

  1. three.js 绘制3d地图

    通过地图数据配合three可以做出非常酷炫的地图,在大数据展示中十分常见. 这篇郭先生就来说说使用three.js几何体制作3D地图.在线案例点击原文地址. 地图的数据是各个地图块的点数组,通过THR ...

  2. java中AQS源码分析

    AQS内部采用CLH队列.CLH队列是由节点组成.内部的Node节点包含的状态有 static final int CANCELLED =  1; static final int SIGNAL    ...

  3. xss利用

    xss盗取cookie 什么是cookie cookie是曲奇饼,啊开个玩笑,cookie是每个用户登录唯一id和账号密码一样可以登录到网站,是的你没有听错cookie可以直接登录,至于服务器怎么设置 ...

  4. swagger -- 前后端分离的API接口

    文章目录 一.背景 二.swagger介绍 三.在maven+springboot项目中使用swagger 四.swagger在项目中的好处 五.美化界面 参考链接:5分钟学会swagger配置 参考 ...

  5. 浅谈6种JS数组遍历方法的区别

    本篇文章给大家介绍一下6种JS数组遍历方法:for.foreach.for in.for of.. each. ().each的区别.有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助. ...

  6. Python网络编程基础|百度网盘免费下载|零基础入门学习资料

    百度网盘免费下载:Python网络编程基础|零基础学习资料 提取码:k7a1 目录: 第1部分 底层网络 第1章 客户/服务器网络介绍 第2章 网络客户端 第3章 网络服务器 第4章 域名系统 第5章 ...

  7. LevelDB,你好~

    LevelDB,你好~ 上篇文章初识:LevelDB介绍了啥是LevelDB,LevelDB有啥特性,以及Linux环境下编译,使用及调试方法. 这篇文章的话,算是LevelDB源码学习的开端吧,主要 ...

  8. Redis在Linux下的安装

    一.下载地址 ①redis中文网下载地址:http://www.redis.cn/ ②百度云网盘下载地址:https://pan.baidu.com/s/1UQcF9V3lwA0fxquM_JFMZw ...

  9. 一文带你学习DWS数据库用户权限设计与管理

    前言 本文将介绍DWS基于RBAC(Role-Based Access Control,基于角色的访问控制)的数据库用户权限管理.简单地说,一个用户拥有若干角色,每一个角色拥有若干权限.这样,就构造成 ...

  10. JavaFX让UI更美观-CSS样式

    相对于Swing来说,JavaFX在UI上改善了很多,不仅可以通过FXML来排版布局界面,同时也可以通过CSS样式表来美化UI. 其实在开发JavaFX应用的时候,可以将FXML看做是HTML,这样跟 ...