mysql数据库命令使用

1、mysql> SHOW GLOBAL STATUS LIKE'Open_files';     #当前打开文件数 

2、mysql> SHOW VARIABLES LIKE'open_files_limit';       #最大打开文件数 

3、解决办法:

5.6 GTID版本不支持这种语法  create table B select * from A;
您可以这样分开操作下,改造下语句:
create table B like A;
insert into B select * from A; 

4、mysql>show binary logs; 查看多少binlog日志,占用多少空间。

      mysql> PURGE MASTER LOGS TO 'mysql-bin.002467'; 删除mysql-bin.002467以前所有binlog,这样删除可以保证*.index信息与binlog文件同步。

   mysql>PURGE MASTER LOGS BEFORE DATE_SUB(CURRENT_DATE, INTERVAL 5 DAY); 手动删除5天前的binlog日志

   mysql> set global expire_logs_days = 5; 把binlog的过期时间设置为5天; mysql> flush logs; 刷一下log使上面的设置生效,否则不生效。

  为保证在MYSQL重启后仍然有效,在my.cnf中也加入此参数设置

  expire_logs_days = 5
    MariaDB [(none)]> show variables like "%bin%";    #查看bin-log是否开启
 
5、mysql -uroot -pthankyou -e"create database if not exists cs"   #库不存在,创建库 
 
6、mysql -uroot -pthankyou -e"drop database if not exists cs"  #库存在,删除库 
 
7、复制旧表的数据到新表(假设两个表结构不一样) 
INSERT INTO 新表(字段1,字段2,.......) SELECT 字段1,字段2,...... FROM 旧表 
 
8、复制旧表的数据到新表(假设两个表结构一样) 
INSERT INTO 新表 SELECT * FROM 旧表 
 
9、可以将表1结构复制到表2 
SELECT * INTO 表2 FROM 表1 WHERE 1=2
 
10、可以将表1内容全部复制到表2 
SELECT * INTO 表2 FROM 表
 
11、mysql>select @@sql_mode;   #查看数据库是否是严格模式
  mysql> set sql_mode="";
  mysql> set global sql_mode="";
 
12、在脚本中判断表存在删除
$MySQL_CLI -h${mysql_host} -u $mysql_user -p$mysql_pass -D$mysql_db  -e"drop table if exists ${table}_${project}_${dt}"

13、登录mysql数据库删除表 

mysql>drop table if exists `表名`; 

14、表不存在创建表

create table if not exists order_goods (like ebsig_crm.order_goods);  #跨库复制表结构 

15、查看表中字段的字符集

     eg:show full columns from 表名;
     
  查看表的字符集
      show table status  from  库名  liek "表名";
 
  查看库的字符集
       show variables like "%char%";
 
       set names utf8;  #设置字符集,包括(client,connection,results)
 
posted @ 2017-08-09 14:28  Mansoncui  阅读(186)  评论(0编辑  收藏  举报