mysql字段扩容_解决DB2事物⽇志满、扩充表字段长度和表空
间的命令
⼀、通常我们在使⽤db2导⼊数据或进⾏别的操作时会遇到事物⽇志已满的情况,导致操作⽆法继续。
在windows系统中,我们可先db2 get db cfg for dbname(要修改的数据库名) 来查看数据的配置情况。
这时根据你的需要来修改⽇志⽂件的⼤⼩、主⽇志⽂件数⽬和辅助⽇志⽂件的数⽬。命令如下:
1、db2 "update db cfg for dbname using logfilsiz XXX (4-262144)".
2、db2 "update db cfg for dbname using logprimary X (2-256)".
3、db2 "update db cfg for dbname using logsecond
XX (0-254)".
在进⾏这些操作的时候都要断掉应⽤和数据库的连接。
⼆、如何扩充数据的表空间。varchar2最大长度
⾸先,可通过 db2 list tablespaces show detail 来查看你的表空间状况。
表空间有⼆种类型:
1、SMS【SYSCATSPACE】,为系统管理表空间。
2、DMS,⽤户⾃⼰的表空间,为数据库管理表空间。
通过上⾯的命令来查看表空间中总的表空间(Total pages)和 剩余表空间(Free
pages),如果是系统管理表空间(SMS)不够,则是由于磁盘空间不够,需要增加磁盘空间。如果是数据库管理表空间(DMS)不够,则需要扩展表空间。扩展表空间的命令为:
db2 alter tablespace extend (all
)例如:db2 alter tabblespace yourtablespace  extend(all
1024M)
扩展了数据库表空间1 G.
三、扩充表中字段的长度。
由于数据的变化导致原本varchar(2000)字段长度不够使⽤,其实很简单希望对⼤家有帮助:
db2 "alter table tabname alter column colname set data type varchar(4000) "
修改tabname表的colname字段将他的字段长度设置为4000。
data type
后的数据类型要和tabname中的colname类型⼀致哦。