gaussDB数据库常用操作命令详解

 更新时间:2021年08月18日 14:04:39   作者:adete92906  
这篇文章主要介绍了gaussDB数据库常用操作命令,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

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数据库命令内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Hbase列式存储入门教程

    Hbase列式存储入门教程

    HBase是一种分布式、可扩展、支持海量数据存储的NoSQL数据库。本文通过应用场景,性质特点给大家介绍Hbase列式存储入门教程,感兴趣的朋友一起看看吧
    2021-07-07
  • 详细讲解PostgreSQL中的全文搜索的用法

    详细讲解PostgreSQL中的全文搜索的用法

    这篇文章详细介绍了的PostgreSQL中的全文搜索的用法,包括对全文搜索的一些优化的实现,需要的朋友可以参考下
    2015-04-04
  • Doris 数据模型ROLLUP及前缀索引官方教程

    Doris 数据模型ROLLUP及前缀索引官方教程

    本文档主要从逻辑层面,描述 Doris 的数据模型 ROLLUP 以及前缀索引的概念,以帮助用户更好的使用 Doris 应对不同的业务场景,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-05-05
  • DataGrip 数据导出与导入的实现示例

    DataGrip 数据导出与导入的实现示例

    DataGrip 是一款类似于Workbench的数据库设计工具。文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-09-09
  • MySQL与Oracle差异比较之五存储过程&Function

    MySQL与Oracle差异比较之五存储过程&Function

    这篇文章主要介绍了MySQL与Oracle差异比较之五存储过程&Function,需要的朋友可以参考下
    2017-04-04
  • 带参数的sql和不带参数的sql存储过程区别

    带参数的sql和不带参数的sql存储过程区别

    来执行我们sql语句,看到很多分页存储过程都是直接拼凑sql语句然后用exec('')执行起来了,这个从效率和安全上面来说,都是不推荐的。
    2008-09-09
  • hive中的几种join到底有什么区别

    hive中的几种join到底有什么区别

    hive处理表关联时由于数据量以及数据倾斜等问题会导致计算性能差甚至任务失败,下面这篇文章主要给大家介绍了关于hive中几种join到底有什么区别的相关资料,需要的朋友可以参考下
    2022-03-03
  • SQL注入详解(扫盲篇)

    SQL注入详解(扫盲篇)

    刚进公司的时候,研究的主要是SQL注入,因为之前没有搞过安全,所有费了好长一段时间对SQL注入基本知识进行了解。所以这篇文章并不是什么很深入的技术博客,或许应该叫它‘ SQL注入扫盲 ’有需要的朋友可以参考学习,下面来一起看看吧。
    2017-01-01
  • MySQL与Oracle差异比较之二 基本语法

    MySQL与Oracle差异比较之二 基本语法

    这篇文章主要介绍了MySQL与Oracle差异比较之二 基本语法,需要的朋友可以参考下
    2017-04-04

最新评论