mysql 常用操作

MySQL命令总结

  • 登陆数据库

> mysql -uroot -p 或者(无密码) > mysql -uroot

  • 查看当前服务器有多少个数据库

(mysql)> show databases;

  • 删除某个数据库

(mysql)> drop database [database_name];
(mysql)> commit;

  • 创建数据库
CREATE DATABASE [db_name] DEFAULT CHATACTER SET utf8(字符集) COLLATE utf8_general_ci;
  • 查看创建数据库的语句

show create database [db_name];

修改字符集编码: ALTER DATABASE [db_name] DEFAULT CHATACTER SET utf8 COLLATE utf8_general_ci;

  • 选择要使用的数据库

(mysql)> use [db_name];

  • 查看数据库中有多少表

(mysql)> use tables;


  • 创建表
create table [table_name](
    id int(10) not null auto_increament,primary key(id),
    name varchar(10) default null
    );ENGINE=INNODB DEFAULT CHARSET=utf8;
  • 查看创建的表信息

(mysql)> show create table [table_name];

  • 查看表结构

(mysql)>desc [table_name] or (mysql)>describe [table_name]

  • 向表中插入数据&查看插入的内容
(mysql)> insert into [table_name] ([key1],[key2]...[keyn]) values (v1,v2..vn), (...),(...);  -- 可以跟一组或者多组value,也就是允许插入多条数据

(mysql)> select * from [table_name];
  • 删除表

(mysql)> drop table [table_name];

  • 删除表中所有的数据

(mysql)> delete from [table_name];

  • 更新表中的数据, 若没有where, 则影响所有的记录

(mysql)> updata [table_name] name='example' where id='eg';

  • 查看mysql服务器版本&当前日期
(mysql)> select version(), current_date;
(mysql)> select version();
(mysql)> select now();
  • 查看数据库用户

(mysql)> select user();
(mysql)> select current_user();

  • 使用 load

> load data local infile [file_path] into table [table_name];


  • 连接远程主机的mysql,假设远程主机ip是101.101.101.101

mysql -h101.101.101.101 -uroot -p(注:u与root中间不加空格)

  • 修改用户密码

在dos或者shell下
mysqladmin -u[用户名] -p[password] [new_password]( 注:因为开始时root没有密码,所以-p旧密码一项就可以省略了)

退出MySQL命令:exit; 或者quit;


  • 增加新用户

grant select,[权限列表] on [数据库名].* to [用户名]@主机地址 identified by [密码]

eg:增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查
询、插入、修改、删除的权限。首先用以root用户连入MYSQL,然后键入以下命令:
(mysql)>grant select,insert,update,delete on *.* to test1@"%" Identified by "abc"

eg2:增加一个用户test2密码为abc,让他只可以在localhost上登录,并可以对数据库mydb进行查询、插入、修改、删除的操作(localhost指本地主机,即MYSQL数据库所在的那台主机)
,这样用户即使用知道test2的密码,他也无法从internet上直接访问数据库,只能通过MYSQL主机上的web页来访问了。

grant select,insert,update,delete on mydb.* to test2@localhost identified by "abc"; 
 
 如果你不想test2有密码,可以使用如下语句将密码去掉。
grant select,insert,update,delete on mydb.* to test2@localhost identified by ""; 
  • alter命令

alter add命令可以用于增加表的字段。
alter add 命令格式:alter table [表名] add [字段] [类型] [其他]

eg: 在表MyClass中添加了一个字段passtest,类型为int(4),默认值为0:
(mysql)> alter table MyClass add passtest int(4) default '0';
(mysql)> alter table Person add age int,add address varchar(11);  --添加两个字段
(mysql)> alter table Person drop column age,drop column address;  -- 删除两个字段
(mysql)> ALTER TABLE `student` MODIFY COLUMN `id` COMMENT '学号';  -- 修改字段的注释
posted @ 2020-04-26 14:02  sha_ka  阅读(103)  评论(0编辑  收藏  举报