mysql数据库(mariadb安装与基本信息,数据库管理,密码管理,用户授权,数据库备份)

    技术2022-07-12  73

    一.数据库

    1.数据库就是个高级的表格软件

    2.常见数据库

    Mysql Oracle  mongodb db2 sqlite sqlserver

    3.Mysql (SUN ----> Oracle)

    4.mariadb

    二.mariadb的安装

    dnf install mariadb-server.x86_64 -y

    三.软件基本信息

    mariadb.service     #启动服务

    3306                #默认端口号

    /etc/my.cnf         #主配置文件

    /var/lib/mysql      #数据目录

    四.数据库开启

    systemctl enable --now mariadb

    五.数据库的安全初始化

    1.关闭数据库开放端口

    vim /etc/my.cnf

    [mysqld]

    skip-networking=1

    systemctl restart mariadb

    netstat -antlupe | grep mysql #此命令查询不到端口

    2.执行安全初始化脚本

    mysql_secure_installation

    mysql ##默认不需要密码,初始化完毕后需要

    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.更改

    ALTER TABLE redhat RENAME linux;      #重命名数据库

    ALTER TABLE linux ADD class varchar(10) AFTER password;     #添加表格条目

    ALTER TABLE linux DROP class;        #删除表格条目

    UPDATE linux SET class='bts' WHERE username='jk';      #更新表格内容

    4.删除

    DELETE from linux where username='user2' and age='18';

    DROP TABLE linux;

    DROP DATABASE westos;

    七.数据密码管理

    1.数据密码更改(记得初始密码)

    mysqladmin -uroot -plee password westos

    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 mysql

    kill -9    id                                         mysql的所有进程

    systemctl start mariadb

    八.用户授权 

    CREATE USER linux@localhost identified by '123'; ##只能用localhost登陆

    CREATE USER linux@% identified by '123'; ##可以通过网络或localhost

    mysql -ulinux -p123 -h localhost

    GRANT INSERT,SELECT ON westos.* TO linux@localhost;

    SHOW GRANTS for linux@localhost;

    REVOKE SELECT ON westos.* FROM linux@localhost;

    DROP user linux@localhost;

    九.数据库的备份

    mysqldump -uroot -p123 --all-database        #全部备份

    mysqldump -uroot -p123 --all-database --no-data       #不备份数据

    mysqldump -uroot -p123 westos                 #只备份westos数据库

    mysqldump -uroot -p123 westos > /mnt/westos.sql

    mysql -uroot -p123 -e "create database westos;"        

    mysql -uroot -p123 westos < /mnt/westos.sql

    Processed: 0.020, SQL: 9