zhoz blog 重新开张,欢迎继续支持!
Sep
25
考虑到数据优化,现将千万级数据作分表存储便与查询
sql如何查找出number中第一位为1的数据:
标准写法:
select substring(cast(adv_id as varchar) from 1 for 1) as a1 from zhoz_sub_dat_6_3;
常规写法:
select substring(cast(adv_id as varchar), 1,1) as a1 from zhoz_sub_dat_6_3;
INSERT INTO zhoz_sub_dat_6_3
sql如何查找出number中第一位为1的数据:
标准写法:
select substring(cast(adv_id as varchar) from 1 for 1) as a1 from zhoz_sub_dat_6_3;
常规写法:
select substring(cast(adv_id as varchar), 1,1) as a1 from zhoz_sub_dat_6_3;
INSERT INTO zhoz_sub_dat_6_3
Mar
19
当执行一条时间比较长的Sql文时,会引起DB挂起。
①查询Pg的状态方法:
# ps axwf | grep 'postgres'
20152 ? S 34:54 /usr/local/pgsql/bin/postgres
20154 ? Ss 54:20 \_ postgres: writer process
20155 ? Ss 41:50 \_ postgres: wal writer process
20156 ? Ss 192:31 \_ postgres: autovacuum launcher process
20157 ? Ss 465:52 \_ postgres: stats collector process
8493 ? Ss 0:00 \_ postgres: postgres WildCard ::1(42985) SELECT
8495 pts/3 S+ 0:00 | \_ grep postgres
②table lock waiting, select waiting产生测试方法,postgres select 执行延迟:
select pg_sleep(50),(select id from zhoz_table) as zhoz_id;
③解决方法:
lock部分mode变换
①查询Pg的状态方法:
# ps axwf | grep 'postgres'
20152 ? S 34:54 /usr/local/pgsql/bin/postgres
20154 ? Ss 54:20 \_ postgres: writer process
20155 ? Ss 41:50 \_ postgres: wal writer process
20156 ? Ss 192:31 \_ postgres: autovacuum launcher process
20157 ? Ss 465:52 \_ postgres: stats collector process
8493 ? Ss 0:00 \_ postgres: postgres WildCard ::1(42985) SELECT
8495 pts/3 S+ 0:00 | \_ grep postgres
②table lock waiting, select waiting产生测试方法,postgres select 执行延迟:
select pg_sleep(50),(select id from zhoz_table) as zhoz_id;
③解决方法:
lock部分mode变换
Apr
28
由于代码问题,产生重复数据。而又是产生于两张表间的关联,需要删除多余的数据,但需要保留最原始的第一条数据(这通常就是ID值最小的那条)。举例说明:
CREATE TABLE `zhoz_mst` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`title` VARCHAR( 66 ) NOT NULL ,
`kana` VARCHAR( 66 ) ,
`zz` VARCHAR( 66 ) NOT NULL
) ENGINE = MYISAM ;
Array
INSERT INTO `zhoz0428`.`zhoz_mst` (`id` ,`title` ,`kana` ,`zz` )VALUES (NULL , 'aaa', 'bbb', 'ccc');
CREATE TABLE `zhoz_mst` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`title` VARCHAR( 66 ) NOT NULL ,
`kana` VARCHAR( 66 ) ,
`zz` VARCHAR( 66 ) NOT NULL
) ENGINE = MYISAM ;
Array
INSERT INTO `zhoz0428`.`zhoz_mst` (`id` ,`title` ,`kana` ,`zz` )VALUES (NULL , 'aaa', 'bbb', 'ccc');
Nov
21
真没有想到,以前一直是PostgreSQL使用者,突然需要库移植又成了头一招了!原来它与mysql命令行操作区别还挺大。
不用怕,但绝对要细心,因为数据库操作是网站的核心,一旦出现损坏或丢失,后果就非常严重了。
我先写了步骤,然后按计划进行,虽然也出现了错误,但最终还是安全移植了。这里记录在案,以备后用。
备份还原方法:Array,先仔细说明这两个命令,再记录我的操作方法。
不用怕,但绝对要细心,因为数据库操作是网站的核心,一旦出现损坏或丢失,后果就非常严重了。
我先写了步骤,然后按计划进行,虽然也出现了错误,但最终还是安全移植了。这里记录在案,以备后用。
备份还原方法:Array,先仔细说明这两个命令,再记录我的操作方法。