1.数据库的基本概念
1.什么是数据库
- 数据库是个高级的表格软件
2.常见数据库
- Hysql Oracle mongodb db2 sqlite sqlserver …
3.mysql (SUN ------> Oracle)
4.Mariadb
- 数据库中的常用名词
1.字段 :表格中的表头
2.表 :表格
3.库 : 存放表格的目录
4.查询 : 查看数据库信息
2.安装数据库软件
安装软件仓库
- dnf search mariadb ##查询数据库软件
- dnf install mariadb-server ##安装数据库软件
3.软件的基本信息
- mariadb.service ##启动服务
- 3306 ##默认端口号
- rpm -ql mariadb-server ##查询安装具体内容
/etc/my.cnf.d/mariadb-server.cnf ##主配置文件
/var/lib/mysql ##数据目录
/usr/lib/systemd/system/mariadb.service ##服务启动脚本
4.数据库开启
- systemctl enable --now mariadb 启动服务
5.数据库的安全初始化
- mysql ##直接进入,无秘登入,不安全
1.设置密码
- mysql_secure_installation ##进入安全初始化脚本
- mysql -uroot -p ##登录数据库(一般不在最后指定密码)
2.关闭端口
- netstat -antlupe | grep mysql ##查看数据对外开放端口 (一般企业中需关闭)
- /etc/my.cnf.d/mariadb-server.cnf ##编辑主配置文件
skip-networking=1 ###关闭数据库网络端口
- systemctl restart MySQL ##重启服务
- netstat -antlupe | grep mysql ##端口关闭
6.数据库的基本管理
1.查看
-
SHOW DATABASES; ##查看库
-
USE mysql; ##进入mysql库
-
SHOW TABLES ##查看表
-
SHOW TABLES FROM mysql;##查看哪一个库里所有表的名字
-
SELECT * FROM user ##查看用户信息
-
SELECT Host,User FROM user; ##查看指定字段信息
-
SELECT User,Passwd,User From user WHERE User=‘luqq’ ##查看指定用户luqq的信息
-
SElECT Host FROM mysql.user WHERE User=‘root’ ##查看指定库指定用户的信息
2.新建
- CREATE DATABASE westos; ##新建库
- SHOW DATABASES; ##查看库
CREATE TABLE westos.linux( ##在westos库里新建表
-> username varchar(6) not null, ##用户名不为空最多六字节
-> passwd varchar(30) not null ##密码不为空最多30字节
-> );
- DESC westos.linux ###查看表的结构
3.插入
- INSERT INTO westos.linux VALUES (‘luqq’,123); ##插入数据
- SELECT * From westos.linux ##查询信息,判断是否插入
- INSERT INTO westos.linux VALUES (‘LEE’ ,‘123’), (‘lee3’ ,‘123’);
##插入多行数据
4.更改(一般不修改库名字)
-
cd /var/lib/mysql/ ##用mv修改库名字,此操作可能会导致数据丢失
-
systenctl restart mariadb ##重启服务
-
ALTER TABLE Linux RENAME userlist;##修改表的名字
-
SHOW TABLES;
-
ALTER TABLE linux ADD age varchar(4); ##在表后添加字段年龄
-
ALTER TABLE linux DROP age ##删除年龄字段
-
ALTER TABLE linux ADD age varchar(4) AFTER username; ##添加年龄字段位于姓名之后
-
UPDATE linux SET age='123‘ ##设置年龄
-
UPDATE linux SET age=‘18’ WHERE username=‘luqq’;##更新用户lee年龄信息
5.删除
- DELETE FROM linux WHERE username=‘lee’ and age=‘123’; ##删除数据
- DROP TABLE Linux ; ##删除表
- DROP DATABASES westos; ##删除库
7.数据库密码管理
1.数据库密码更改
- mysqladmin -uroot -pwestos password lee ##知道原始密码直接修改
2.数据库密码破解
- systemctl stop mariadb
- mysqld_safe --skip-grant-table & ##t跳过授权表运行数据库
- SELECT * FROM mysql.user;
- mysql -uroot ##进入数据模式
- UPDATE mysql.user SET authentication_string=password(‘123’) WHERE
User=‘root’; ##更改超级用户密码
-
flush privilegas ##刷新数据库
-
ps aux | grep myqsql ##查看mysql进程
-
kill -9 XXXX ###结束进程
-
重启数据库服务
-
数据库损坏重装
systemctl stop mysql
rm -rf /var/lib/mysql/
dnf install mariadb -y
8.用户授权
-
CREATE USER luqq@localhost identified by ‘luqq’;
##localhost表示此用户只能在本机登录数据库 -
CREATE USER westos@% identified by ‘%’;
##%此用户可以通过网络远程登陆数据库,可用网络登陆的前提是数据库必须开启网络登录接口 -
DROP USER westos@’%’ ##删除用户
-
mysql -uwestos -pwestos -h192.168.1.112 ##远程登陆
-
##不用实验,一般不允许用户可远程登陆数据库
/etc/my.cnf.d/mariadb-server.cnf ##主配置文件 注释掉不可远程登陆 mysql -uroot
-pwestos -e “SELECT Host,User FROM mysql.user”
-
实验环境创建:
- CREATE DATABASE westostest; ##创建数据库
- CREATE TABLE westostest.userlist( ->username varchar(10) not null, -> password varchar(30) not null
->); ##创建表 - INSERT INTO westostest.userlist VALUES (‘test’,‘123’) ##添加数据
-
GRANT SELECT ON westostest.* TO westos@localhost ##授权查看命令
-
SHOW GRANTS FOR westos@localhost ##查看授权
-
GRANT INSERT ON westostest.* TO westos@localhost ##授权插入命令
-
取消授权 REVOKE INSERT ON westostest.* FROM westos@localhost ##撤销授权
-
SELECT * FROM mysql.user ##查看用户权力
9.数据库备份
-
mysqldump -uroot -p123 mysql > /mt/mysql.sql ##备份mysql库
-
mysqldump -uroot -p123 --all-databases > /mnt/all.sql ##备份所有数据库
-
mysqldump -uroot -p123 --all-databases --no-data > /mnt/all.sql
##备份所有库但不备份库中数据 -
mysqldump -uroot -p123 westostest > /mnt/westostest.aql
##备份westostest 数据库 -
删除westostest数据库 DROP DATABASE westostest
-
数据库还原
- mysql -uroot -p123 -e “CREATE DATABASE westostest;” ##创建数据库
- mysql -uroot -123 westostest< /mnt/westostest.sql ##还原数据库
-
SHOW DATABASES; ##查看数据库
10.phpmysqladmin的安装
-
dnf install httpd php php-mysqlnd.x86_64 -y ##安装使支持数据库
-
systemctl enable --now httpd ###开启apache服务
-
tar jxf phpMyAdmin-3.4.0-all-languages.tar.bz2 -C /var/www/html/
###解压压缩包 -
cd /var/www/html ##进入查看文件
-
mv phpMyAdmin-3.4.0-all-languages/ mysqladmin ##修改名称方便书写
-
cd mysqladmin/ ##进入文件
-
less Documentation.txt ##查看安装帮助
-
cp config.sample.inc.php config.sample.php ##复制模板
-
firefox http://192.168.1.112/mysqladmin ##访问