MySql大全

启动 / 关闭MySQL的命令:

先将操作目录移到安装目录下的bin目录下

mysqld install 

net start mysql

net stop mysql


增加用户:

格式:grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码"


一些常用的命令:

use 库名; 

1. 导出数据: 
  mysqldump --opt test > mysql.test 
  即将数据库test数据库导出到mysql.test文件,后者是一个文本文件 
  如:mysqldump -u root -p123456 --databases dbname > mysql.dbname 
  就是把数据库dbname导出到文件mysql.dbname中。

2. 导入数据: 


修改字符集:

系统变量:
– character_set_server:默认的内部操作字符集
– character_set_client:客户端来源数据使用的字符集
– character_set_connection:连接层字符集
– character_set_results:查询结果字符集
– character_set_database:当前选中数据库的默认字符集
– character_set_system:系统元数据(字段名等)字符集
– 还有以collation_开头的同上面对应的变量,用来描述字符序。

检测字符集问题的一些手段
     SHOW CHARACTER SET;
     SHOW COLLATION;
     SHOW VARIABLES LIKE ‘character%’;
     SHOW VARIABLES LIKE ‘collation%’;
     SQL函数HEX、LENGTH、CHAR_LENGTH
     SQL函数CHARSET、COLLATION

还有一种修改字符集的方法,就是使用mysql的命令
     mysql> SET character_set_client = utf8 ;
     mysql> SET character_set_connection = utf8 ;
     mysql> SET character_set_database = utf8 ;
     mysql> SET character_set_results = utf8 ;
     mysql> SET character_set_server = utf8 ;
     mysql> SET collation_connection = utf8 ;
     mysql> SET collation_database = utf8 ;
     mysql> SET collation_server = utf8 ;

Mysql命令

show语句

mysql> show databases;        //显示数据库

1.show databases ; // 显示mysql中所有数据库的名称 
2.show tables [from database_name]; // 显示当前数据库中所有表的名称 
3.show columns from table_name ; // 显示表中列名称 ,和desc tablename 相同
4.show [full] processlist;//正在运行的所有进程信息
5.show grants for user_name; // 显示一个用户的权限,显示结果类似于grant 命令 
6.show [gloabl | session] variables [like '%keyword%']; // 显示系统变量的名称和值
7.show [gloabl | session] status [like '%keyword%'];  // 提供服务器状态信息。使用GLOBAL选项,您可以得到所有MySQL连接的状态值。使用SESSION,您可以得到所有当前连接的状态值。默认为SESSION。
8.show index from tb_name [from db_name]; // 显示表的索引
9.show privileges; // 显示服务器支持的权限 
10.show table status [from db_name] [like '%keyword%']; // 显示当前数据库或者指定的database中的每个表的信息,信息包括表类型、创建时间和表的最新更新时间 。
11.show create database database_name; // 显示create database 语句
12.show create table tab_name; // 显示create table 语句
13.show innodb status; // 显示innoDB存储引擎的状态 
14.show logs; // 显示BDB存储引擎的日志
15.show warnings; // 显示最后一个执行的语句所产生的错误、警告和通知 
16.show errors; // 显示最后一个执行语句所产生的错误 
17.s
how character set [like '%pattern%'];//用于显示可用字符集,like对表的charset字段进行匹配
18.show collation [ like 'latin1%'] ; //
用于显示所有可用字符集的排序方式,like对表中Collation字段进行匹配。
19.show full columns from tab_name [like '%user%‘] ;//
显示在一个给定表中的各列的信息,FULL关键词会使得输出中包含您拥有的权限,并包含对每一列各自的评注,like对列名进行匹配。
20.
show engine innodb logs;//显示存储引擎的日志或状态信息
21.
show [storage] engines;//显示存储引擎的状态信息。可以查看一个存储引擎是否被支持,以及默认引擎是什么。
22.
show grants;
   show grants for username;

   show grants for current_user;
   show grants for current_user();

23.show open tables [from dbname] [like '%keyword%'];//列举在表缓存中当前被打开的非TEMPORARY表。
24.show triggers [from db_name] [like '%keyword%'];//列出了目前被MySQL服务器定义的触发程序。LIKE子句的待匹配的表达式(expr)会与触发程序定义时所在的表的名称相比较,而不与触发程序的名称相比较。
25.show create procedure sp_name;//显示某个存储过程的详细信息

常用的sql语句

一、表的导入导出语句及时间字符串部分处理函数

导出数据库所有表的结构               mysqldump -uroot -proot db_name -d > d:/export_db.sql(结尾不用分号)
导出数据库某个表的结构               mysqldump -uroot -proot db_name table_name -d > d:/export_table.sql(结尾不用分号)

导入SQL文件                             source e:/test.sql;

清空表                                      truncate table table_name;

利用正则删除全英文的记录           delete from table_name where (select name REGEXP '^[-&(),.a-zA-Z_;[:blank:] ]+$')=1

当前时间加4小时                        select date_add(now(), interval 4 hour);  输出:2009-10-27 12:47:57

连接字符串                                select concat('first',' end') ;                       输出:first end

替换字符串                                select replace('abcabc','a','e');                  输出:ebcebc

 

二、select into 和 insert into select 两种表复制语句

 

select * into destTbl from srcTbl
insert into destTbl(fld1, fld2) select fld1, 5 from srcTbl

以上两句都是将 srcTbl 的数据插入到 destTbl,但两句又有区别的:

    * 第一句(select into from)要求目标表(destTbl)不存在,因为在插入时会自动创建。
    * 第二句(insert into select from)要求目标表(destTbl)存在,由于目标表已经存在,所以我们除了插入源表(srcTbl)的字段外,还可以插入常量



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值