欢迎大家扫码关注我的微信公众号:
###☆ 数据库 使用
1、启动服务:
在终端输入:service mysql start 需要终端密码。
2、查看服务:
在终端输入:sudo netstat -tap | grep mysql
3、关闭服务:
在终端输入:service mysql stop 需要终端密码。
4、重启服务:
在终端输入:service mysql restart 需要终端密码。
5、进入MySQL数据库:
在终端输入:mysql -u root -p回车输入密码(或直接输密码)。也可以使用其他账号登陆MySQL(更换root处的名字即可)。
6、退出MySQL:
exit 或 quit,加不加分号都可以(所以会有四种方式)。
###☆ 数据库 操作
1、显示MySQL里面所有的数据库:
show databases;
2、切换到某个数据库:
use [databasename];
如:use mysql;
3、显示当前数据库中的所有表:
show tables;
4、列出某个表的结构:
desc [tablename]; 或 describe [tablename];
如:desc user;
5、显示当前选择的数据库:
select database(); 若未选择,则返回NULL
6、创建新的数据库:
create database [databasename];
如:create database cybeyond;
7、删除数据库:
drop database [databasename];
如:drop database cybeyond;
8、添加新用户:
grant select on 数据库.* to 用户名@登陆主机 identified by "密码";
如:grant select on cybeyond.* to lianmx@192.168.2.3 identified by "haha123";
意思是:为cybeyond数据库添加新用户,名为lianmx从192.168.2.3的主机以haha123的密码登陆访问(该数据库)
9、更改密码:
mysqladmin -u [databasename] -p "旧密码" password "新密码";
如:mysqladmin -u cybeyond -p "haha123" password "haha345";
意思是:将cybeyond数据库的原密码haha123改为haha345
###☆ 数据库 表操作
1、使用某个数据库:
use [databasename];
如:use cybeyond;
2、创建数据表:
create table tab_name(
id int(10) auto_increment primary key not null,
name varchar(40),
pwd varchar(40)
) charset=utf8;
其中aotu_increment是自动增长,自动增长的数由MySQL服务维护。
3、删除数据表:
drop table [tablename];
如:drop table cybeyond;
4、显示数据表结构:
第一种:desc [tablename];
第二种:describe [tablename];
第三种:show columns from [tablename];
如:desc cybeyond; 或 describe cybeyond; 或 show columns from cybeyond;
5、查询表中的记录:
select * from [tablename];
如:select * from cybeyond;
6、往数据表插入数据:
全列插入:insert into 表名 values(...);
缺省插入:insert into 表名(列1,...) values(值1,...);
同时插入多条数据:insert into 表名 values(...),(...)...;
或insert into 表名(列1,...) values(值1,...),(值1,...)...;
如:insert into cybeyond(id, name, age) values(1, "小明", 18);
再如:insert into cybeyond(name) values("小红"),("小刚"),("小强");
如果数据是字符型,则必须加上单引号或双引号。
7、将表中的数据清空:
delete from [tablename];
如:delete from cybeyond;
8、更改表的定义,把某个栏位设置为主键:
alter table [tablename] add primary key([col-name]);
如:alter table cybeyond add primary key(id);
意思是:将cybeyond表中的id栏位设置为主键
9、将主键的定义删除:
alter table [tablename] drop primary key;
如:alter table cybeyond drop primary key;
10、在表中添加一个字段:
alter table [tablename] add [字段名] [type];
如:alter table cybeyond add sex varchar(20);
11、删除表中的某个字段:
alter table [tablename] drop [字段名];
如:alter table cybeyond drop sex;
12、修改(更新)表中的数据:
updata [tablename] set 列1=值1,... where 条件;
如:updata cybeyond set sex="male" where id = 2;
【注】也可以修改多个值;如果不加条件,可以修改多行。
13、删除表中的某条数据:
物理删除:
delete from [tablename] where [条件];
如:delete from cybeyond where id = 2;
意思是:将cybeyond表中的id为2的那条数据删除。
【注】物理删除比较彻底,删除后无法恢复。
逻辑删除:
逻辑删除其实就是使用updata来修改(更新)数据:
假如有:
alter table cybeyond add isdelete bit default 0;
则可以有:
updata cybeyond isdelete=1 where ...;
###☆ 备份与恢复
####一、数据备份
1、进入超级管理员:
在终端输入:
sudo -s 按要求输入密码
2、进入MySQL目录:
在终端输入:
cd /var/lib/mysql
3、运行mysqldump命令:
mysqldump -u root -p [databasename] > [path + 备份文件名.sql]; 按提示输入MySQL密码
如:mysqldump -u root -p cybeyond > /home/CYBEYOND/backups.sql;
意思是:将数据库cybeyond备份到home下CYBEYOND路径下的backups.sql文件中
####二、数据恢复
1、进入MySQL创建用于恢复数据的数据库:
create database recovery charset=utf8;
意思是:创建一个数据库recovery,使用的字符集是utf8
2、退出MySQL,执行如下命令:
在终端输入:
mysql -u root -p [databasename] < [path + 备份文件名.sql]; 按提示输入MySQL密码。
如:mysql -u root -p recovery < /home/CYBEYOND/backups.sql;