数据库的基本概念
1.数据
描述事物的符号记录称为数据(Data),包括数字,文字、图形、图像、声音、档案记录等以“记录”形式按统一的格式进行存储。
2.数据表
将不同的记录组织在一起,就形成了“表”,是用来存储具体数据的3.
3.数据库
数据库就是表的集合,是存储数据表的仓库,以一定的组织方式存储的相互有关的数据
数据库的操作管理
1.查询当前服务器中有哪些库
MariaDB [(none)]> show databases;
2.产看数据库中的数据表信息
MariaDB [(none)]> use mysql
3.查看有哪些表
MariaDB [mysql]> show tables;
#MySQL数据库的数据文件存放在/usr/local/mysql/data中,每个子目录对应一个数据库,在MyISAM存储引擎时每个表对应三个文件:
[root@localhost~]# Is /usr/local/mysql/data/mysql |grep user
user.frm 表的结构定义
user.MYD 表的数据
user.MYI 表的索引
4.显示数据表的结构(字段(列))
MariaDB [mysql]> desc user;
DESCRIBE [数据库名.]表名 = desc
5.创建新的数据库
MariaDB [(none)]> create database crushlinux;
6.创建新的数据表要添加表结构
MariaDB [crushlinux]> create table users(user_name char(18) not null,user_passwd char(48) default '',primary key(user_name));
7.删除某一个数据表
drop table users;
8.删除某一个数据库
drop database crushlinux;
9.向数据表中插入新的数据记录
(1) insert into users(user_name,user_passwd) values('zhangsan','123');
drop table users;
8.删除某一个数据库
drop database crushlinux;
9.向数据表中插入新的数据记录
(1) insert into users(user_name,user_passwd) values('zhangsan','123');
(2) insert into users values('zhaosi','123');
(3) insert into users values('lisi',password('123')),('liuneng',password('123'));
10.查看表中的数据
select * from users;
11.修改、更新数据表中的数据信息
update users set user_passwd=password('321') where user_name='zhangsan';
12.在数据库中修改root用户的密码
select * from users;
11.修改、更新数据表中的数据信息
update users set user_passwd=password('321') where user_name='zhangsan';
12.在数据库中修改root用户的密码
update user set password=password('123123') where user='root';
13.刷新授权表
flush privileges;
14.在数据表中删除指定的数据记录
delete from users where user_name='zhangsan';
13.刷新授权表
flush privileges;
14.在数据表中删除指定的数据记录
delete from users where user_name='zhangsan';
15.设置用户权限(用户不存在时,新建用户)
grant all on *.* to 'root'@'192.168.200.111' identified by '123456'
给予管理员的所有权限 给192.168.200.111这个主机 登录密码为123456
grant select on imployee_slary.*to 'amber'@'localhost' identified by '123456'
给予amber的查询权限 给本地主机 登录密码为123456
flush privileges;
重新加载授权表
16.查看用户权限
show grants;
show grants for 'amber'@'localhost';
show grants for 'admin'@'192.168.200.111'
17.撤销用户权限
revoke select on imployee_salary.* from 'amber'@'localhost';
flush privileges;
课外补充操作:
1.用于显示广泛的服务器状态信息
show status;
2.显示创建特定数据库或表
help create database;help create tables;
3.显示授权用户的安全权限
3.显示授权用户的安全权限
show grants;
4.显示服务器错误或警告信息
4.显示服务器错误或警告信息
show errors;
show warnings;
5.显示当前连接用户
show warnings;
5.显示当前连接用户
mysql> select user();
6.显示当前时间
mysql> select now();
7.显示当前用户及时间
mysq|> select CURRENT USER(),CURRENT_TIMESTAMP;
6.显示当前时间
mysql> select now();
7.显示当前用户及时间
mysq|> select CURRENT USER(),CURRENT_TIMESTAMP;
mysq|> select user(),now();
8.显示当前数据库
mysql> select database();
9.显示服务器状态
mysql>status;
8.显示当前数据库
mysql> select database();
9.显示服务器状态
mysql>status;
数据库的备份与恢复:
方法一:可直接备份数据库的数据目录 mysql对应的目录是/usr/local/mysql/data mariadb对应的目录是/var/lib/mysql
方法二:使用备份工具:mysqldump
1.备份操作
mysqldump -u用户名p [密码] [选项] [数据库名] [表名]> /备份路径/备份文件名
常见选项:
--all-databases
--opt
[root@www ~]# mysqldump -u root -p mysql user > mysql-user.sql
[root@www ~]# mysqldump -u root -p mysql user > mysql-user.sql
Enter password:
[root@www ~]# mysqldump -u root -p -database auth > auth.sql
[root@www ~]# mysqldump -u root -p -database auth > auth.sql
Enter password:
[root@www ~]# mysqldump -u root -P - -l-dabases > al-data.sql
[root@www ~]# mysqldump -u root -P - -l-dabases > al-data.sql
Enter password:
2.恢复操作
mysql -uroot -p [数据库名] </备份路径/备份文件名
2.恢复操作
mysql -uroot -p [数据库名] </备份路径/备份文件名
[root@www ~]# mysql -uroot -p test < mysql-useer.sql
Enter password: