来了来了它来了,本篇博客我们会学会linux下的数据库的种种操作;帮助我们更好地使用数据库。
数据库的定义
数据库是以一定方式储存在一起、能予多个用户共享的数据集合。简而言之数据库就是功能更加强大的,更高级的表格软件
常见的有:
Mysql ;Oracle ;mongodb ;db2; sqlite ;sqlserver …
Mysql (SUN -----> Oracle)
mariadb :属于mysql的一个替代品,而且是开源的。
mariadb软件信息
redhat 8 中安装mariadb:dnf install mariadb-server.x86_64
mariadb.service ; 启动服务
3306 ; 默认端口号
/etc/my.cnf ; 主配置文件
/var/lib/mysql ; 数据目录
systemctl enable --now mariadb ; 开启mariabd
数据库的安全优化
1.关闭数据库开放端口
vim /etc/my.cnf
[mysqld]
skip-networking=1
systemctl restart mariadb
netstatus -antlupe | grep mysql ; 此命令查询不到端口
然后执行安全初始化脚本:mysql_secure_installation。设置密码之后一路默认
数据库的基本管理
1.查看
SHOW DATABASES ; 显示库名称
USE mysql ; 进入mysql库
SHOW TABLES ; 显示库中的所有表
SELECT * FROM user ; 查询所有数据
SELECT Host,User,Password FROM user ; 查询指定字段
2.新建
CREATE DATABASE westos; ##新建库
CREATE TABLE linux (
username varchar(6) not null,
password varchar(30) not null
); 新建表
DESC linux; 显示表结构
INSERT INTO linux VALUES (‘user1’,‘123’); 插入数据
3.更改
ALTER TABLE redhat RENAME linux;
ALTER TABLE linux ADD age varchar(4) AFTER password;
ALTER TABLE linux DROP age;
UPDATE linux SET sex=‘g’ WHERE username=‘user2’;
4.删除
DELETE from linux where username=‘user2’ and age=‘18’;
DROP TABLE linux;
DROP DATABASE westos;
数据库密码的管理
1.首先,数据密码更改:mysqladmin -uroot -plee password westos
更改为westos
2.数据库密码破解
systemctl stop mariadb
mysqld_safe --skip-grant-tables &
UPDATE mysql.user set Password=password(‘lee’) WHERE User=‘root’;
flush privileges;
kill -9 mysql的所有进程
systemctl start mariadb
数据库的备份
mysqldump -uroot -p123 --all-database
mysqldump -uroot -p123 --all-database --no-data
mysqldump -uroot -p123 westos
mysqldump -uroot -p123 westos > /mnt/westos.sql
mysql -uroot -p123 -e “create database westos;”
mysql -uroot -p123 westos < /mnt/westos.sql