您的位置:首页 > 数据库 > MySQL

MySQL(2):命令行基本操作

2017-06-28 18:48 489 查看
1.登录mysql

1.1 使用默认3306端口登录MySQL

mysql -u root -p


1.2 设置通讯协议、IP和端口来登录MySQL

mysql -u root -p --protocol=tcp --host=localhost --port=3307


2.数据库操作

2.1 显示服务器上当前存在数据库。

show databases;


2.2 创建数据库,名称为dbtest。

create database dbtest;


2.3 删除数据库, 名称为dbtest。

drop database dbtest;


2.4 选择dbtest数据库

use dbtest;




3.表操作

登录MySQL后,要通过use命令选择一个数据库,在这个数据库上进行表操作。

3.1 显示当前数据库中存在什么表

show tables;


3.2 创建数据库表,表名称为mytable,存储引擎为InnoDB,字段id为主键、唯一索引

语法:create table table_name (字段1 数据类型 , 字段2 数据类型);

create table mytable (
id int(11) NOT NULL AUTO_INCREMENT,
name varchar(255) DEFAULT NULL,
age int(3) DEFAULT NULL,
phone varchar(20) DEFAULT NULL,
time datetime DEFAULT NULL,
address text,
PRIMARY KEY (id)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8;


3.3 查看表结构 mytable

describe mytable;




3.4 向表中加入记录

语法:insert into 表名 [(字段1
ccb9
, 字段2 , ….)] values (值1 , 值2 , …..);

insert into mytable (id, name, age, phone, time, address) values (1, '张伟', 3, 67891234, '2012-02-02 14:32:12','北京市海淀区海淀大街20号');


注:

如果每一条信息都写入的话,可以不在表达式中写属性列表;

insert into mytable values ( 3, '李强', 3, 67891234, '2012-02-02 2:2:2','北京市海淀区海淀大街19号');


如果在属性列表和value值列表中都没有主键,那么主键自动增加,增加的数值在AUTO_INCREMENT=9中进行了设置。

insert into mytable (name, age, phone, time, address) values ( '李强强', 3, 67891234, '2012-02-02 2:2:2','北京市海淀区海淀大街18号');


3.5 从表中检索信息

语法:select 字段1 , 字段2 from table_name [where 字段名=数值 and/or 字段名=数值 …. ] [order by 字段 顺序]

3.5.1、从表中检索所有记录

select * from mytable;


3.5.2、从表中进行条件检索

select * from mytable where phone = 67891234 and age = 3 order by id desc;


3.5.3、从表中检索指定的字段

select name, age from mytable;


3.5.4、从表中检索出唯一的不重复记录:

select distinct age from mytable;




3.6 更新表中的指定信息

语法:Update table_name set 字段名=’新值’ [, 字段2 =’新值’ , …..][where id=id_num] [order by 字段 顺序];

update mytable set address = ‘烟袋斜街10号’where name = ‘李强强’;


3.7 删除表中的信息

删除整个表中的信息(清空表) : delete from table_name;

删除表中指定条件的语句 : delete from table_name where 条件语句 ; 条件语句如 : id=3;

delete from mytable whrer id = 1;


3.8 删除zhangyan表

drop table mytable;




4.用户管理操作

4.1 创建用户

语法: create user ‘username’@’host’ identified by ‘password’;

create user 'temp'@'localhost' identified by '123456';


4.2 查看用户

在MySQL中其实有一个内置且名为mysql的数据库,这个数据库中存储的是mysql的一些数据,比如用户、权限信息、存储过程等,所以可以通过如下简单的查询语句来显示所有的用户。

select user, host from mysql.user


4.3 授权

语法:grant privileges on databasename.tablename to ‘username’@’host’

privileges选项是指用户的操作权限,如select , insert, update等,如果要授予所的权限则使用all。

grant select, insert on test.user to 'temp'@'localhost';
grant all on *.* to 'root2'@'%';


4.4 设置与更改用户密码

语法:set password for ‘username’@’host’ = password (“newpassword”);

如果是当前登陆用户用set password = password(“newpassword”);

set password for 'temp'@'localhost' = password ("123456");


4.5 撤销用户权限

语法: revoke privilege on databasename.tablename from ‘username’@’host’;

revoke all on *.* from 'root2'@'%';


4.6 删除用户

语法: drop user ‘username’@’host’;

drop user 'root2'@'%';
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mysql 数据库