百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 主页>网站教程>数据库> MySQL的常用操作命令整理
分享文章到:

MySQL的常用操作命令整理

发布时间:01/15 来源: 浏览: 关键词:
常用操作命令是指的是在我们开发中用到的如数据库创建,权限,查询及索引等等操作了,下面我们就和小编来看这些MySQL的常用操作命令整理吧。

缘由: 初次接触命令行操作MySQL数据库,使用还不熟练,故整理之,方便日后查阅。

备注: 用户登录MySQL后,对数据库操作的命令基本都以”;” 或 “\g”结尾。

一. MySQL服务操作:

启动MySQL服务:
net start mysql
停止MySQL服务:
net stop mysql
进入MySQL数据库:
mysql -h 主机地址 -u用户名 -p用户密码
退出MySQL操作:
quit;
刷新数据库:
flush privileges;
创建数据库用户:
一次可以创建多个数据库用户,如:

CREATE USER 用户1 identified BY "密码1" , 用户2 IDENTIFIED BY "密码2";
或者:
grant select on 数据库.* to 用户名@登录主机 identified by "密码";
更改MySQL用户密码:
mysqladmin -u用户名 -p旧密码 password 新密码
或者:
update user set password=password("新密码") where user="用户名";
用户的权限控制:
库,表级的权限控制 : 将某个库中的某个表的控制权赋予某个用户:

Grant all ON db_name.table_name TO user_name [ indentified by "password" ];
设置用户登录IP限制:
grant all privileges on 数据库.* to 用户名@主机地址 identified by "密码" with grant option;
例如:

// 设置root用户可在本地访问所有的数据库:
grant all privileges on *.* to root@localhost identified by "1234567890" with grant option;
// 设置root用户可在任何IP地址访问mydatabase数据库:
grant all privileges on mydatabase.* to root@"%" identified by "1234567890" with grant option;
删除用户登录IP授权:
revoke all privileges on 数据库.* from 用户名@"%";
或者:
delete from user where user="root" and host="%";
删除SQL用户:
delete from user where User="用户名" and Host="主机地址";
二. 数据库操作:

列出数据库:
show databases;
使用名为database_name的数据库:
use database_name;
创建名为database_name的数据库:
create database database_name;
删除一个名为database_name的数据库:
drop database database_name;
三. 表操作:

列出所有表:
show tables;
创建一个名为table_name的新表:
create table table_name;
或者:
create table table_name (字段1 数据类型 , 字段2 数据类型);
删除表table_name:
drop table table_name;
显示表table_name的数据结构:
describe table_name;
或:
show columns from table_name;
向表table_name中添加数据:
Insert into table_name [(字段1 , 字段2 , ….)] values (值1 , 值2 , …..);
更新某一个字段的数据:
Update table_name set 字段名="新值" [, 字段2 ="新值" , …..][where id=id_num] [order by 字段 顺序];
例 : update mytable set username="lisi" where id=1;。

将表table_name中的记录清空:
delete from table_name; // 删除整个表中的信息
delete from table_name where 条件语句 ; // 删除表中指定条件的语句
显示表table_name的记录:
select * from table_name;
修改表名:
alter table table_name rename to new_table_name;
四. 修改表结构:

把某个字段设为主键:
alter table table_name add primary key (col_name);
删除主键的定义:
alter table table_name drop primary key (col_name);
增加字段,并设置字段类型:
alter table table_name add col_name varchar(20);
删除字段:
alter table table_name drop col_name;
修改字段属性:
alter table table_name modify col_name varchar(40) not null;
修改字段名:
alter table table_name change old_col_name new_col_name varchar(40); // 必须为当前字段指定数据类型等属性,否则不能修改
用已存在的表来建新表,但不包含旧表的数据:
create table new_table_name like old_table_name;
增加主键,外键,约束,索引等:
约束(主键: Primary key、唯一性: Unique、非空: Not Null);
自动增张: auto_increment;
外键: Foreign key。 与reference table_name(col_name列名)配合使用,建表时单独使用。
删除多个表中有关联的数据:设置foreign key 为set null。
五. 数据的备份与恢复:

在当前的数据库上执行外部的SQL脚本:
mysql < extend.sql
指定数据库执行外部SQL脚本:
mysql [表名] < extend.sql
数据传入:
load data local infile "[文件名]" into table [表名];
备份数据库:
mysqldump -h 主机地址 -u 用户名 -p 数据库名 > dbname_backup.sql
恢复数据库:
mysqladmin -h 主机地址 -u 用户名 -p create 新数据库名
mysqldump -h 主机地址 -u 用户名 -p 新数据库名 < dbname_backup.sql
卸出建表指令:
mysqladmin -u 用户名 -p -d 数据库名 > a.sql
卸出插入数据的sql命令,不包含建表命令:
mysqladmin -u 用户名 -p -t 数据库名 > a.sql
卸出数据,不包含sql命令:
mysqldump -T 卸出数据的目录 phptest 指定卸出的数据表
其中,只有指定了 -T 参数才可以卸出纯文本文件。如果不指定卸出的数据表,则将卸出整个数据库的数据。每个表会生成两个文件,一个为.sql文件,包含建表执行;另一个为.txt文件,只包含数据,且没有sql指令。

六. 查看数据库信息:

查看数据库版本号:
select version();
查看当前的user:
select user();
查看当前操作的数据库名:
mysql> select database();

打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

共有1人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助

能出一分力是一分吧!

订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板