GaussDB命令行連接
1.1 ssh連接主機,IP:192.168.28.178,用戶名:root,密碼:Huawei @123
1.2 切換至bin目錄,cd /home/gaussdba/app/bin/
1.3 切換用戶為gaussdba,su gaussdba
1.4 連接gaussDb,gsql -d postgres -p 5432
基本操作命令
\l 列出所有數據庫
\c database_name 切換數據庫
\d 列出當前數據庫下的表
\d tablename 列出指定表的所有字段
\d+ tablename 查看指定表的基本情況
\dn 展示當前數據庫下所有schema信息
SHOW search_path; 顯示當前使用的schema
SET search_path TO myschema; 切換當前schema
\q 退出登錄
mysql數據遷移至gaussDB
1. 導出mysql數據
show variables like '%secure%' 查詢出secure_file_priv地址;
在secure_file_priv地址下mkdir aaa;
修改文件權限chmod -R 777 aaa;
select * from i18n_message into outfile '/tmp/etl/temp.dat' fields terminated by ''';
2. 下載數據并上傳至GaussDb服務器
3. 導入gaussDb
COPY I18N_MESSAGE FROM '/home/gaussdba/app/bin/temp.dat' WITH DELIMITER '''';
切換gaussDb中遇到的問題
1. 執行出現如下錯誤:column "TASK.TASK_ID" must appear in the GROUP BY clause or be used in an aggregate function ,原因
是:select的字段與Group by中的字段要一致或不一致的字段必須使用聚合函數;
2. MySQL中的ifnull函數用nvl函數替換;
3. limit 0,10 ---------->limit 10 offset 0;
4. find_in_set(operator, '1096,789') ---------->operator ~ concat('(', replace('1096,789', ',', '|'), ')');
5. 不支持uuid(),可以自定義UUID函數,
CREATE OR REPLACE FUNCTION UUID()
RETURNS TEXT AS $$
BEGIN
RETURN to_number(now()::text,'99999999999999999999999999999999999999999999999');
END;
$$ LANGUAGE plpgsql;
ALTER FUNCTION UUID() OWNER TO GAUSSDBA;
6. 字符串不能用雙引號""括起來,只能用單引號'',例如:SELECT "" as local_path ----------->SELECT '' as local_path
7. INSERT INTO ON DUPLICATE KEY ------------>REPLACE INTO
8. 模糊查詢,LIKE:區分大小寫,ILIKE:不區分大小寫,MySQL中查詢默認不區分大小寫,所以可以用ILIKE替換
9. GaussDB中認為null和空字符''是一樣的,不支持a=''這種空字符判斷,必須寫成a is null
10. GaussDB中字符串比較時,注意字段類型要一致,例如CHAR是定長的,不足的補空格,和VARCHAR類型比較時就會有問題
11. 單引號'轉義,用一個單引號轉義另一個'',例如xi''an
到此這篇關于gaussDB數據庫常用操作命令的文章就介紹到這了,更多相關gaussDB數據庫命令內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- gaussdb 200安裝 data studio jdbc idea鏈接保姆級安裝步驟
- 詳解GaussDB for MySQL性能優化
- 詳解GaussDB(DWS) explain分布式執行計劃的示例