一.数据库的基本概念
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/my.cnf ##编辑配置数据库文件
辑内容如下:
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; ##查看表中的内容
1)创建目录:
2)在该数据库下创建表
查看所创建的表的结构
给创建的表添加内容
注:建立的数据库名称设定完就不会更改,否则可能会在数据的查询使用中出现问题,稳定性很低,生产环境中基本不用.
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@localhost ~]# mysqldump -uroot -p --all-database##查看数据库所有内容,为脚本模式
[root@localhost~l]# mysqldump -uroot -p westos ##查看westos数据库的脚本文件
备份:
[root@localhost~]# 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.数据库的恢复
法一:
mysql -uroot -p -e "CREATE DATABASE westos;"; ##创建数据库
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身份登录数据库
创建数据库
在表中添加属性
在表格中插入内容
可以看到生成表格的代码
检测:
用命令登入数据库查看
新建的库
新建的表格