一.数据库的基本概念

1.定义:
数据库就是一种按数据结构来组织,存储和管理数据的仓库,其中包含数据挖掘,大数据信息的推送
2.数据库的种类
sqlserver-----微软公司
mysql---------sun公司
oracle--------oracle
db2------------idm
3.数据库用到的语言:sql

企业用到的语言:oracle(闭源,要收费,但是性能优越,一般核心数据中心用到)
mysql------版本:mariadb (完全兼容,操作简便,代码公用)
数据库的集合就称为数据库软件。

二.数据库的基本信息

数据库内部:squl语句;大小写区均可,但是一般用大写,大写是通用的,数据库内部对应有目录,目录里面有表。

1.数据库软件的安装及相关配置
准备工作:准备一个系统镜像并且配置yum源

  • 安装数据库的软件
yum install mariadb-server.x86_64  -y    ##安装数据库软件
 systemctl start mariadb
 mysql       ##进入数据库



  • 安全初始化
    注:默认情况下,数据库的网络接口是打开的,为了安全需要要关闭此接口
vim  /etc/myf   ##编辑配置数据库文件
编辑内容如下:
  skip-networking=1    ##关闭网络接口
systemctl restart  mariadb  
netstat -antlupe | grep mysql   ##查看数据库登录接口



默认登录接口对所有人都是开放的,当设置万配置文件之后,发现就没有数据库的接口

  • 设定登录权限
mysql_secure_installation   ##设定登录权限

内容及其相应解释:

Enter current password for root (enter for    none): 		##数据库原始密码(默认没有直接回车)
Set root password? [Y/n] 	##是否要设定数据库超级用户密码
New password: 			##输入要设定的超级用户密码
Re-enter new password: 		##重复输入
Remove anonymous users? [Y/n] 	##是否删除匿名用户访问权限
Disallow root login remotely? [Y/n] 		##是否禁止超级用户通过远程登陆
Remove test database and access to it? [Y/n] 	##刷新数据库



注:里面所有的内容都选y,可以直接一直回车,只需中途输超级用户密码俩次就行

三.数据库的基本sql语句操作

1.登录

mysql -uroot -pwestos		###-u表示指定登陆用户,-p 表示指定此用户密码


注:登陆的时候-p后面不能直接加密码,二是-p加回车输入密码,以保证数据库的安全性
2.数据库的查询
彼此的库都是平行的不存在上下级关系

MariaDB [(none)]> SHOW DATABASES;   ##显示数据库
MariaDB [(none)]> USE mysql     ##进入数据库
MariaDB [mysql]> SHOW TABLES;   ##显示库的table
MariaDB [mysql]> DESC user;     ##查看user表的结构
MariaDB [mysql]> SELECT Host,User  FROM user;  ##查看表的具体信息






3.数据库及其表的建立

CREATE DATABASE westos;   ##建立westos数据库
CREATE TABLE linux  )      ##建立以linux为格式的表
-> usrname varchar(10) not null,
    -> password varchar(50) not null
    -> );
DESC linux   ##查看创建该表的结构
INSERT INTO linux VALUES ('zll','123');
INSERT INTO linux VALUES ('zll1','westos');   ##给该中表中添加内容
SELECT * FROM linux;    ##查看表中的内容
  • 创建目录:

  • 在该数据库下创建表

  • 查看所创建的表的结构

  • 给创建的表添加内容

    注:建立的数据库名称设定完就不会更改,否则可能会在数据的查询使用中出现问题,稳定性很低,生产环境中基本不用.
    4.更新数据库信息

MariaDB [westos]> ALTER TABLE linux ADD class varchar(20) AFTER username;     ##添加class在username的后面
MariaDB [westos]> UPDATE linux SET class='linux';  ##更新班级为linux
MariaDB [westos]> UPDATE linux SET class='java' WHERE usrname='zll'     ##更改zll的班级为java




注:更改信息不能放在表的最前面。如果放在最前面查询的时候是错乱的,默认的第一个字段是基准字段,如果要改的话可以在配置文件中修改
5.数据库的备份

[root@dns mysql]# mysqldump -uroot -p --all-database  ##查看数据库所有内容,为脚本模式
[root@dns mysql]# mysqldump -uroot -p westos      ##查看westos数据库的脚本文件


备份:

[root@dns mysql]# mysqldump -uroot -p westos > /mnt/westos.sql     ##将westos数据库备份再/mnt/westos.sql


6.数据库的删除

MariaDB [westos]> DROP TABLE westos.linux;   ##删除表,但是数据库还在
MariaDB [westos]> DROP DATABASE westos;   ##删除数据库


westos.linux指westos数据库下的表linux

MariaDB [(none)]> DELETE FROM westos.linux WHERE username='zll';   ##删除表中的zll


7.数据库的恢复
法一:

[root@dns mysql]# mysql -uroot -p -e "CREATE DATABASE westos;";  ##创建数据库
root@dns mysql]# mysql -uroot -pwestos -e "SHOW DATABASES;"     ##查看数据库
mysql -uroot -p westos < /mnt/westos.sql  ##备份的数据库文件恢复




法二:

[root@dns mysql]# vim /mnt/westos.sql
编辑内容为:
 21 CREATE DATABASE westos;
 22 USE westos;
[root@dns mysql]# mysql -uroot -pwestos < /mnt/westos.sql




8.用户授权

MariaDB [(none)]> SELECT User FROM mysql.user; ##查看mysql用户
MariaDB [(none)]> CREATE USER zll@localhost identified by 'westos';    ##创建用户


验证:

9.修改用户权限

MariaDB [(none)]> SHOW GRANTS FOR zll@localhost    ##查看用户权限

  • insert 权限的添加
    注:添加权限都是在超级管理用户下操作
GRANT INSERT ON westos.* TO zll@localhost;     ##给用户添加insert权限


验证:


发现没有select权限

  • select权限的添加
GRANT SELECT ON westos.* TO zll@localhost;


验证:

10.用户权限的删除

REVOKE SELECT ON westos.* FROM zll@localhost;
 REVOKE INSERT ON westos.* FROM zll@localhost;



验证:

发现即不能浏览也不能插入。
11.超级用户密码修改

  • 超级用户密码的修改
mysqladmin -uroot -pwestos password redhat

  • 当忘记超级用户密码;
systemctl  stop mariadb  ##关闭服务
mysqld_safe --skip-grant-tables &			##开启mysql登陆接口并忽略授权表
mysql							##直接不用密码可以登陆
update mysql.user set Password=password('westos') where User='root';	##更新超级用户密码信息
ps aux | grep mysql					##过滤mysql的所有进程并结束这些进程
kill -9 mysqlpid
systemctl start mariadb					##重新开启mysql
mysql -uroot -p123					##登陆测试





四.数据库图形管理

安装phpmyadmin数据库图形管理
下载phpMyAdmin-3.4.0-all-languages

yum install php php-mysql httpd -y
systemctl start httpd

tar jxf phpMyAdmin-3.4.0-all-languages -C /var/www/html/
[root@dns-server html]# cd mysqladmin/
[root@dns-server mysqladmin]# vim README ##可以看到安装手册


cp config.sample.inc.php config.inc.php  ##复制模板
vim config.inc.php   ##编辑生成的文件


文件编辑内容:

测试:
访问
http://172.25.254.102/mysqladmin

会进入安装界面
输入超级用户密码即可进入图形界面
注:可以在里面家里数据库和表格与用命令建立的数据库及表格相同。
验证如下:

  • 用root身份登录数据库
  • 创建数据库
  • 在数据库中创建表格
  • 在表中添加属性
  • 在表格中插入内容

    可以看到生成表格的代码

    检测:
    用命令登入数据库查看
    新建的库

    新建的表格

更多推荐

linux之数据库