mysql的一些基本操作

本文主要为了记录mysql的一些基本操作语句,方便以后查询操作
1.更改root密码

 mysqladmin -uroot password 'yourpassword'

2.远程登陆mysql服务器

 mysql -uroot -p -h192.168.137.10 -P3306

登录本地数据库:

 mysql -uroot -p密码

3.查询数据库

show databases;

4.进入某个数据库

use databasename;

5.列出数据库中的表

show tables;

6.查看某个表全部字段

desc slow_log;
show create table slow_log\G; 

(不仅可以显示表信息,还可以显示建表语句)
7.查看当前用户

 select user();

8.查看当前所在数据库

select database();

9.创建新数据库(可以指定字符集)

create database db1 charset utf8;

10.创建新表

create table t1 (`id` int(4), `name` char(40));

11.查看数据库版本

 select version();

12.查看数据库状态

show status;      

当前会话状态

show global status;  

全局数据库状态

show slave status\G;  

查看主从数据库状态信息
13.查询数据库参数

show variables;

14.修改数据库参数

show variables like 'max_connect%';
set global max_connect_errors = 1000;

(重启数据库会失效,要在配置文件中修改)
15.查看当前数据库队列

show processlist;

16.创建普通用户并授权给某个数据库

grant all on databasename.* to 'user1'@'localhost' identified by '123456';

17.查询表数据

select * from mysql.db;  

//查询该表中的所有字段

select count(*) from mysql.user;

//count(*)表示表中有多少行

select db,user  from mysql.db;   

//查询表中的多个字段

select * from mysql.db where host like '10.0.%';

在查询语句中可以使用万能匹配 “%”
18.插入一行数据

insert into db1.t1 values (1, 'abc');

19.更改表的某一行数据

update db1.t1 set name='aaa' where id=1;

20.清空表数据

truncate table db1.t1;

21.删除表

 drop table db1.t1;

22.清空数据库中的所有表(数据库名是eab12)

mysql -N -s information_schema -e "SELECT CONCAT('TRUNCATE TABLE ',TABLE_NAME,';') FROM TABLES WHERE TABLE_SCHEMA='eab12'" | mysql -f eab12

23.删除数据库

drop database db1;

24.数据库备份

mysqldump  -uroot -p'yourpassword' mysql >/tmp/mysql.sql

25.数据库恢复

mysql -uroot -p'yourpassword' mysql </tmp/mysql.sql

26.新建普通用户

CREATE USER name IDENTIFIED BY 'ssapdrow';

27.更改普通用户密码

SET PASSWORD FOR name=PASSWORD('fdddfd');

28.查看name用户权限

SHOW GRANTS FOR name;

29.脚本中执行mysql命令

mysql -uuser -ppasswd -e"show databases"
echo "show databases"|mysql -uuser -ppassword

以下是执行大量mysql语句采用的方式

 mysql -uuser -hhostname -ppasswd <<EOF

原文连接:https://www.cnblogs.com/suxiaoman/p/7693066.html

mysql语句
EOF

1.对数据库常用命令

1.连接数据库

mysql -u用户名 -p密码

2.显示已有数据库

show databases;

3.创建数据库

create database sqlname;

4.选择数据库

use database sqlname;

5.显示数据库中的表(先选择数据库)

show tables;

6.显示当前数据库的版本信息以及连接用户名

select version(),user();

7.删除数据库(删除时没有提示直接删除)

drop database sqlname;

2.数据库中对表的命令

1.创建表
(1)语法:

create table tablename(

字段1 数据类型 字段属性

字段n
);
(2)注意:
1.创建表时为了防止与保留字冲突,用’'括起来
2.单行注释:#…
多行注释:/…/
3.创建表时多字段中间用英文逗号隔开,最后一行不用逗号。
(3) 字段约束和属性
1.非空约束 not null(字段不允许为空)
2.默认约束 default(设置默认值)
3.唯一约束 unique key(uk)(设置字段的值是唯一的,可为空,但只能有一个空值)
4.主键约束 primary key(pk)(作为表记录的唯一标识)
5.外键约束 foreign key(fk)(用于两个表之间建立关系,需要指定引用主表的哪一字段。在数据库的存储引擎中InnoDB支持外键,MyISAM不支持外键。
作为外键的字段要求是主表中的主键(单字段主键))

添加外键约束:

CONSTRAINT FK_外键名 FOREIGN KEY(字表中外键字段)REFERENCES 关联表名 (关联字段)。
grandid作为字表的外键

1.设置自增auto_increment=n,从n开始。
2.设置自增set @@ auto_increment_increment=m,步长为m。
3.多字段设置主键:primary key(字段1,字段2…字段n)
4.表中的注释/说明性文字:)comment=“说明文字”;
5.设置字符集:)charset=“字符集”;
6.查看表的结构:describe’表名’/desc 表名
7.查看数据库定义:show create database sqlname;
8.查看数据表定义:show create table tablename;
9.查看默认存储引擎:show variables like’storage_engine%’;
11.指定表的存储引擎:)engine=存储引擎;
10.删除表:drop table ‘tablename’;
11.获取当前日期:now();
12.修改表:
(1)修改表名:alter table 旧表名 rename 新表名;
(2)添加字段:alter table 表名 add 字段名 数据类型…;(添加新的字段)
(3)修改字段:alter table 表名 change 原字段名 新字段名 数据类型…;
(4)删除字段:alter table 表名 drop 字段名;
(5)在创建完表以后添加主键约束:
alter table 表名 add constraint 主键名 primary key 表名(主键字段);
(6)创建完表以后添加外键约束(作为外键的字段要求是主表中的主键(单字段主键)):
alter table 表名 add constraint 外键名 foreign key(外键字段) references 关联表名 (关联字段);

插入数据

1.插入单行数据:
insert into 表名 (字段名列表(逗号隔开)) values(值列表(逗号隔开));
2.插入多行数据 :
insert into 表名(字段名列表) values (值列表1), … ,(值列表n);
3.将查询结果插入到新表中:
create table 新表(select 字段1, … ,from 原表);
3.更新数据(修改数据):
update 表名 set 列名=更新值 where 更新条件;
4.删除数据
(1)delete from 表名 where 删除条件;
delete 删除的是整条数据,不会只删除单个列。
(2)truncate table 删除数据:
truncate table 删除的是表中所有的行,但表的结构,列,约束,索引等不会改变。不能用于有外键约束的表。删除数据不能恢复。
truncate table 表名 where 删除条件;

数据查询

1.使用select查询
select 列名/表达式/函数/常量 from 表名 where 查询条件 order by 排序的列名asc/desc;
(1)查询所有的数据行和列:
select * from 表名;
(2)查询部分行和列:
select 列名… from 表名 where 查询条件;
(3)在查询中使用列的别名:
select 列名 AS 新列名 form 表名 where 查询条件;
计算,合并得到新的列名:
select 列名1+’.’+列名2 AS 新列名 from 表名;
(4)查询空值:
通过is null 或者 is not null 判断列值是否为空

原文链接:https://blog.youkuaiyun.com/qq_42992643/article/details/82959720

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值