mysql 数据库的基本管理
一.数据库
1.什么是数据库
数据库就是个高级的表格软件
2.常见数据库
Mysql Oracle
3.Mysql (SUN -----> Oracle)
4.mariadb
二.安装mariadb
dnf install mariadb-server.x86_64 -y
三.mariadb 基本信息
mariadb.service 启动服务
3306 默认端口号
/etc/my.cnf.d/mariadb-server.cnf 主配置文件
/var/lib/mysql 数据目录,当需要重新安装mariadb时需要清理此目录或备份
四.数据库开启
systemctl enable --now mariadb
五.数据库的安全初始化
1.关闭数据库开放端口
vim /etc/my.cnf.d/mariadb-server.cnf
[mysqld]
skip-networking=1
systemctl restart mariadb
ss -antlupe | grep mysql 此命令查询不到端口
2.执行安全初始化脚本
mysql_secure_installation
[root@Mariadb ~]# mysql 默认不需要密码
[root@Mariadb ~]# mysql 初始化完毕后需要
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
[root@Mariadb ~]# mysql -uroot -p
$: -u 指定登陆用户 -p 密码
六.数据库的基本管理
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'); 插入数据
FLUSH PRIVILEGES; 刷新数据库
在这里插入图片描述
3.更改和删除
DELETE from redhat where username='user2' and password='g';
DROP TABLE redhat;
DROP DATABASE westos;
ALTER TABLE linuxRENAMEredhat;
ALTER TABLE redhat ADD age varchar(4) AFTER password;
ALTER TABLE redhat DROP age;
UPDATE redhat SET password='g' WHERE username='user2';
七.数据密码管理
1.数据密码更改
mysqladmin -uroot -pwestos password lee
2.数据库密码破解
systemctl stop mariadb
mysqld_safe --skip-grant-tables &
UPDATE mysql.user set Password=password('lee') WHERE User='root'; RHEL7
UPDATE mysql.user set authentication_string=password('lee') WHERE User='root'; RHEL8
flush privileges;
ps aux | grep mariadb
kill -9 mysql的所有进程
systemctl start mariadb
此处一定要爱kill所有进程之后再kill mysql进程,否则就会发现mysql进程无法被kill掉:
八.用户授权
CREATE USER lee@localhost identified by 'lee'; 只能用localhost登陆
CREATE USER lee@% identified by '%'; 可以通过网络或localhost登陆
GRANT INSERT,SELECT ON westos.* TO lee@localhost;
SHOW GRANTS for lee@localhost;
REVOKE SELECT ON westos.* FROM lee@localhost;
DROP user lee@localhost;
九.数据库的备份
mysqldump -uroot -pwestos --all-database
mysqldump -uroot -p westos --all-database --no-data 没有数据信息备份
mysqldump -uroot -pwestos westos
mysqldump -uroot -pwestos westos > /mnt/westos.sql
恢复
a.
mysql -uroot -pwestos -e “DROP DATABASE westos;” 先进行库删除,以便验证下一步恢复。
mysql -uroot -pwestos -e "create database westos;" 创建库
mysql -uroot -pwestos westos < /mnt/westos.sql 恢复库中的数据信息
b.
mysql -uroot -pwestos -e "DROP DATABASE westos;"
vim /mntwestos.sql
CREATE DATABASE westos;
USE westos;
mysql -uroot -pwestos < /mnt/westos.sql
十.phpmyadmin的安装
dnf install httpd php php-mysqlnd -y
systemctl enable --now httpd
systemctl stop firewalld
cp phpMyAdmin-3.4.0-all-languages.tar. bz2 /var/www/html/
cd /var/www/html/
tar jxf phpMyAdmin-3.4.0-all-languages.tar.bz2
mv phpMyAdmin-3.4.0-all-languages/ mysqladmin
cd mysqladmin
cp config.sample.inc.php config.inc.php
vim config.inc.php
$cfg['blowfish_secret'] = 'ba17c1ec07d65003';
systemctl restart httpd.server
在浏览器:‘
在shell里查看一下我们刚才的操作成功没有: