在日常的网站维护和管理中,会用到非常多的SQL语句,
熟练使用对网站管理有很多好处,尤其是站群管理的时候。
下面列一些常用的命令做备记。
1、显示数据库
show databases
显示表
show tables;
2、创建用户
创建root用户密码为123
use mysql;
grant all on *.* to root@'%' identified by '123' with grant option;
commit;
3、修改密码
grant all on *.* to xing@'localhost' identified by '123456' wit
MySQL是世界上最受欢迎的关系型数据库管理系统之一,用于存储和管理各种类型的数据。在命令行界面下,MySQL提供了丰富的命令,使得数据库的管理和维护变得简单而高效。以下是对标题和描述中提到的18个常用MySQL命令的详细解释:
1. **显示数据库**:
使用`show databases;`命令可以列出当前MySQL服务器上的所有数据库。
2. **创建用户**:
创建新用户并设置密码,例如创建名为root的用户,密码为123,权限为全局,允许任何主机连接:
```
use mysql;
grant all on *.* to root@'%' identified by '123' with grant option;
commit;
```
3. **修改密码**:
改变用户密码,如将用户名为xing,主机为localhost的用户密码改为123456:
```
grant all on *.* to xing@'localhost' identified by '123456' with grant option;
update user set password = password('newpwd') where user = 'xing' and host='localhost';
flush privileges;
```
4. **创建数据库**:
使用`create database`命令创建数据库,例如创建名为testdb的数据库:
```
create database testdb;
```
5. **预防性创建数据库**:
使用`if not exists`关键字防止已存在的数据库被再次创建:
```
create database if not exists testdb;
```
6. **创建表**:
在选择的数据库中创建表,例如在testdb数据库中创建名为table1的表,包含username和password两列:
```
use testdb;
create table table1(
username varchar(12),
password varchar(20)
);
```
7. **预防性创建表**:
预防性创建表aaa,避免已存在时出现错误:
```
create table if not exists aaa(
ss varchar(20)
);
```
8. **查看表结构**:
使用`describe`命令查看表的结构:
```
describe table1;
```
9. **插入数据**:
插入数据到table1表中:
```
insert into table1(username, password) values('leizhimin','lavasoft'), ('hellokitty','hahhahah');
commit;
```
10. **查询数据**:
查询table1中的所有数据:
```
select * from table1;
```
11. **更改数据**:
更新表中数据,例如将username为hellokitty的password更改为'hehe':
```
update table1 set password='hehe' where username='hellokitty';
commit;
```
12. **删除数据**:
删除username为hellokitty的数据:
```
delete from table1 where username='hellokitty';
commit;
```
13. **添加列**:
向table1表中添加sex和age两列:
```
alter table table1 add column(
sex varchar(2) comment '性别',
age date not null comment '年龄'
);
commit;
```
14. **修改表结构**:
从查询结果创建新表,这里假设要创建名为tmp的表:
```
create table tmp as
select * from table1;
```
15. **删除表**:
删除存在的table1和tmp表:
```
drop table if exists table1;
drop table if exists tmp;
```
16. **备份数据库**:
备份testdb数据库到本地文件:
```
mysqldump -h 192.168.3.143 -u root -p pwd -x --default-character-set=gbk > C:\testdb.sql
```
17. **删除数据库**:
删除testdb数据库:
```
drop database testdb;
```
18. **恢复数据库**:
恢复testdb数据库:
```
首先创建testdb数据库
create database testdb;
然后执行恢复命令
mysql -u root -pleizhimin testdb < C:\testdb.sql
```
掌握这些基本的MySQL命令行操作,将使你在数据库管理中更加得心应手,无论是日常维护还是应对复杂任务,都能游刃有余。在实际工作中,你还可以根据需要学习更多的高级命令和功能,如索引、视图、触发器、存储过程等,进一步提升数据库管理效率。