• mysql 常用命令


    登录:

    直接点击 Mysql Command Line Client 启动Mysql 运行窗口默认的是root登录账号,只需直接输入密码,如下图 ↓↓↓

      

    此时假如我们想用其他账号是不行的;但一定有其它方法呀!我们可以去mysql安装目录的bin文件夹下 “shift+右键” 启动命令窗口控制台(推荐)或启动cmd命令窗口控制台后进入mysql安装目录的bin文件夹,然后执行  mysql -u 你的用户名 -p 你的数据库注意:此处数据库后面不能带分号;) 回车进入。假如你忘记了自己的数据库名怎么写咋办?经实验登录时不带数据库名也是OK哒~~,登录成功后就可以show databases 查看账号名下的可用数据库啦~~

      

    查看账号数据库:show databases;

    查看当前数据库所有表:show tables;
    查看当前数据库所有存储过程:show procedure status;
                  select `name` from MySQL.proc where db = 'db2017_hrportal' and `type` = 'PROCEDURE';
    查看当前数据库所有函数:show function status; 
    查看存储过程或函数的创建代码
     show create procedure proc_name;
     show create function func_name;

    查看视图
     select * from information_schema.views //视图
     select * from information_schema.tables   //表

    查看触发器
     show triggers [from db_name] [like expr]
     select * from triggers T where trigger_name=”mytrigger” G
    远程连接:
    
    1、显示密码(某些特殊字符可能不被允许,如括号等): mysql -h IP地址 -P 3306 -u root -p123456
    
    2、隐藏密码(即先不输入密码,提示后再输入): mysql -h IP地址 -P 3306 -u root -p
    查看某账号信息:select * from mysql.user where user='用户名' G (重要:G用来按key:value显示结果,更加直观,不需要加分号;)

      

    复制某表(结构和数据)方法一: create table 新表名 select * from 旧表名; -- 此方式不会复制主键类型和自增方式。
    方法二:create table 新表名 like 旧表名; insert into 新表名 select * from 旧表名; 
    拼接多行为一列:select group_concat(列名1,[列名2],[列名3] separator '','') as aaa from 表名 ;
    需注意group_concat 默认有长度限制 1024,可通过修改扩大长度限制:https://blog.csdn.net/qq_25178661/article/details/86541749
    截取字符串:
    substr(字段,起始位置从1开始); substring_index(字段,查找的字符,起始位置从1开始);
    select substring_index(substr(deptlongname,4),'_',1) centerName from users group by centerName; 如deptlongname字段值为 公司_中心_部门_分组,则查询结果为“中心”。
    从json数组读出某个参数值,结果还是数组:https://blog.csdn.net/u013329580/article/details/77096630
    
    select 
    JSON_EXTRACT(test_file,'$[*].url') 文件路径,
    from file_info_collection;
    删除数据库:drop database tablename;
    MySql Host is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts' 
    解决方法:最后一句就行:flush hosts; https:
    //www.cnblogs.com/susuyu/archive/2013/05/28/3104249.html
    备份mysql数据库,但是为啥是sql语句模式啊,大数据情况下肯定不可以吧?
    https://blog.51cto.com/13641879/2146914

     根据子节点查找所有父节点:

    select @_id, (select @_id := parent_dept_code from dept where dept_code = @_id) as _pid
    from (select @_id := '要查询的节点id') vars , dept
    where @_id != '顶级父节点id'

     

  • 相关阅读:
    线程池及其原理和使用
    多线程通信Queue
    Condition实现线程通信
    守护线程和锁
    习题 7:更多的打印
    习题 6:字符串和文本
    习题 5:更多的变量和打印
    习题 4:变量和命名
    习题 3:数字和数学计算
    习题 2:注解和#号
  • 原文地址:https://www.cnblogs.com/jying/p/7773332.html
Copyright © 2020-2023  润新知