mysql 表列表,MYSQL 常用命令列表

1、系统管理

mysql -h主机地址-u用户名-p

mysql -h127.0.0.1 -uroot -p123456

连接MYSQL(在mysql/bin)

exit

退出MYSQL命令

mysqladmin -u用户名-p旧密码password新密码

mysqladmin –u root –p password '654321' //设置密码为654321

修改密码(在mysql/bin)

grant select [insert][,update][,delete]on数据库.* to用户名@localhost("%",表示任何主机)identified by "密码"

grant select,insert,update,delete on nnzx.* to nnzx@localhost identified by "nnzx342";

增加用户

mysqldump –u root –p --opt数据库名>备份文件名

mysqldump –u root –pjet14mysql --opt hubeiburnscenter > /hubeiburnscenter.sql

备份数据库(在mysql/bin)

mysql –u root –p < batch-file(例如备份文件名)

使用批处理

mysql.server start

启动服务器

mysql.server stop

停止服务器

msql.server --log

2、查询命令

select version()

查询版本号

select current_date

查询当前日期

3、显示命令

show databases

显示数据库列表

show tables

显示库中的数据表

describe表名

显示数据表的结构

select * from表名

显示表中的记录

select what_to_select from which table [where conditions_to_satisfy and (or) where conditions_to_satisfy]

从一个表中检索数据『满足条件』

select字段1,字段2 ,…from表名

显示特定的列

select * from表名order by字段名

排序行

select字段1,包含字段2的运算式as新字段from表名

字段值运算操作

select字段1 is null(is not null)

空值操作

Select * from表名where字段名like(not like)“字符”

注:允许使用“_”匹配任何单个字符,而“%”匹配任意数目字符。

模式匹配

Select * from表名where字段名regexp(not regexp)或者rlike(not rlike)

l“.”匹配任何单个的字符

l一个字符类[…]匹配方框内任何字符。例如[a],[asd],[a-z]匹配任何小写字母,[0-9]匹配任何数字。

l“*”匹配零个或者多个在它前面的东西。

l正则表达式区分大小写[aA]。

l如果它出现在被测试值的任何地方,模式都匹配。

l定位,在模式开始处用“^”,结尾处用“$”,例如“^b”

扩展正则表达式

Select count(*) from表名

Select字段名,count(*) from表名group by字段名

行计数

4、编辑命令

use database库名

使用的数据库

create database库名

创建数据库

create table表名

在数据库中创建表

insert into表名values (“data”,”data”)

向表中添加记录

Load data infile “/path/filename” into table表名

从文件中向表添加数据,文件每行包括一条记录,用定位符(tab)把值分开。

drop database库名

删除数据库

drop table表名

删除数据库中的表

delete from表名where

删除数据库表中的记录

Update表名set字段=”值” where where conditions_to_satisfy

更新数据库表中记录的值

下面的代码实现了取消sss用户的所有权限的功能。

mysql> revoke all on *.* from efortune@localhost;

Query OK, 0 rows affected (0.00 sec)

REVOKE语句只能取消用户的权限,而不可以删除用户。即使取消了所有的权限,用户仍然可以连接到服务器。要想彻底的删除用户,必须使用DELETE语句将该用户的记录从MySQL数据库中的user表中删除。该语句的语法格式如下:

Delete from user where user = "user_name" a nd host = "host_name";

使用DELETE删除用户sss,代码如下:

mysql> use mysql

Database changed

mysql>delete from user where user='efortune' and host='localhost';

mysql>flush privileges;

Query OK, 1 row affected (0.02 sec)

其中,delete用于删除用户,flush告诉服务器重新加载授权表。

备份 MySQL 数据库.

mysqldump -u用户名 -p密码 数据库名 > 导出文件名

mysqldump -uroot -ppassword --opt db_name > backupfile.sql   //备份整个数据库

Mysqldump –uroot –ppassword --skip-lock-tables dbname > dbname.sql

导入mysql

# 直接用mysql客户端.

mysql -uritto -p123456 db_name < db_name.sql

# 用SOURCE语法. (其实这不是标准的 SQL 语法, 而是 mysql 客户端提供的功能)

source /tmp/db_name.sql;

//这里需要指定文件的绝对路径, 并且必须是mysqld运行用户(例如 nobody)有权限读取的文件.

修复数据库

1,简单的修复模式

myisamchk -r -q path/数据库/坏表.MYI

注:-r ----恢复模式 -q ----快速修复

2,使用安全修复模式

myisamchk --safe-recover path/数据库/坏表.MYI

3,困难的修复模式

如果在索引文件的第一个16K块被破坏,或包含不正确的信息,或如果索引文件丢失,你只应该到这个阶段 。在这种情况下,创建一个新的索引文件是必要的。按如下这样做:

把数据文件移更安全的地方。

使用表描述文件创建新的(空)数据和索引文件:

shell> mysql db_name

mysql> Delete FROM tbl_name;

mysql> quit

将老的数据文件拷贝到新创建的数据文件之中。(不要只是将老文件移回新文件之中;你要保留一个副本以防某些东西出错。)回到阶段2。现在myisamchk -r -q应该工作了。(这不应该是一个无限循环)。

4,非常困难的修复模式

只有描述文件也破坏了,你才应该到达这个阶段。这应该从未发生过,因为在表被创建以后,描述文件就不再改变了。

从一个备份恢复描述文件并且回到阶段3。你也可以恢复索引文件并且回到阶段2。对后者,你应该用myisamchk -r启动。

如果你没有一个备份但是确切地知道表是怎样被创建的,在另一个数据库中创建表的一个拷贝。删除新的数据文件,然后从其他数据库将描述和索引文件移到破坏的数据库中。这给了你新的描述和索引文件,但是让数据文件独自留下来了。回到阶段2并且尝试重建索引文件。

5,优化表结构

myisamchk -r 表

也可以使用sql语句来优化OPTIMIZE TABLE

6备份脚本 @echo off mysqldump  -uroot -ppassword --opt uchome > E:\bak\"uchome%date%".sql mysqldump  -uroot -ppassword --opt ucenter > E:\bak\"ucenter%date%".sql mysqldump  -uroot -ppassword --opt testdz > E:\bak\"testdz%date%".sql mysqldump  -uroot -ppassword --opt meilian > E:\bak\"meilian%date%".sql mysqldump  -uroot -ppassword --opt yejihao > E:\bak\"yejihao%date%".sql

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值