统计信息同步 本页介绍天翼云TeleDB数据库统计信息同步的操作。 初始化实例 1. 通过pgxcctl新建一个双CN、双DN的实例,并开启服务。 2. 通过telesql连接到CN节点。 3. 执行sql “create default node group defaultgroup with(dn01, dn02); create sharding group to group defaultgroup;”。 创建插件 1. 通过telesql连接到CN节点。 2. 执行sql “create extension teledbxcore;” 3. 执行telesql命令dx,查看插件teledbxcore是否存在。 创建枚举类型 1. 通过telesql连接到CN节点。 2. 执行sql“create type week as enum('Sun','Mon','Tues','Wed','Thur','Fri','Sat');”。 创建表 执行sql “CREATE TABLE basictypestable ( id INT PRIMARY KEY, booleancol BOOLEAN, smallintcol SMALLINT, integercol INTEGER, bigintcol BIGINT, realcol REAL, doublecol DOUBLE PRECISION, numericcol NUMERIC(10,2), decimalcol DECIMAL(10,2), charcol CHAR(10), varcharcol VARCHAR(50), textcol TEXT, datecol DATE, timecol TIME, timestampcol TIMESTAMP, intervalcol INTERVAL, binarycol BYTEA );” 执行sql “create table duty( person text, weekday week );” 执行sql “CREATE TABLE complextest ( id serial PRIMARY KEY, complexcolumn complextype );“ 创建索引 执行sql “CREATE INDEX integerindex ON basictypestable(integercol);” 创建索引。 创建统计对象 执行sql “CREATE STATISTICS basictypesstats ON booleancol, integercol, doublecol, numericcol, charcol, timestampcolFROM basictypestable;“ 插入数据 1.执行sql “DO $$ DECLARE i INT : 1; BEGIN WHILE i < 1000 LOOP INSERT INTO basictypestable (id, booleancol, smallintcol, integercol, bigintcol, realcol, doublecol, numericcol, decimalcol, charcol, varcharcol, textcol, datecol, timecol, timestampcol, intervalcol, binarycol) VALUES ( i, CASE WHEN random() < 0.5 THEN TRUE ELSE FALSE END, trunc(random() 65536 32768)::SMALLINT, trunc(random() 2147483647)::INTEGER, trunc(random() 9223372036854775807)::BIGINT, random() 1000, random() 1000, trunc(random() 1000 random() 100) / 100, trunc(random() 1000 random() 100) / 100, substr(md5(random()::text), 1, 10), substr(md5(random()::text), 1, 50), md5(random()::text), CURRENTDATE (trunc(random() 3650) ' days')::INTERVAL, CURRENTTIME (trunc(random() 86400) ' seconds')::INTERVAL, CURRENTTIMESTAMP (trunc(random() 3650) ' days')::INTERVAL, (trunc(random() 3650) ' days')::INTERVAL, decode(md5(random()::text), 'hex') ); i : i + 1; END LOOP; END $$;”插入数据。 2.执行sql “select count() from basictypestable;”查询表内数据行数。 3.执行sql “insert into duty values('April','Sun'); insert into duty values('Harris','Mon'); insert into duty values('Dave','Wed');”插入数据。 4.执行sql “select count() from duty; “查询表内数据行数