LINUX学习------3.4 Linux中mysql数据库的基本原理

本文详细介绍了数据库的基础概念,包括常见数据库类型如MySQL、Oracle等,以及数据库中的关键术语。重点讲解了MySQL的安装、安全初始化、基本操作、密码管理,以及phpMyAdmin的安装。此外,还涉及了数据库备份与还原的方法和数据库授权管理。
摘要由CSDN通过智能技术生成

3.4.1 数据库的介绍

1、什么是数据库
    数据库就是一个高级的表格软件
2、常见的数据库
    muysql oracle moongodb db2 sqlite sqlserver
数据库中的常用名词
    字段    :表格中的表头
    表        :表格
    库        :存放表格的目录
    查询    :对表格中的指定内容进行查看

3.4.2 mysql的安装和软件信息

dnf install mariadb-server -y                     ##安装
systemctl enable --now mariadb              ##开启
mysql_secure_installation                        ##初始化设置
mysql -u root -p                                           ##登陆
设置安全默认对外端口设置等等
mariadb.service                                          ##启动服务
3306                                                             ##默认端口号
/etc/my.cnf.d/mariadb-server.cnf               ##主配置文件
/var/lib/mysql                                               ##数据目录,当需要重新安装mariadb时需要清理此目录或备份

3.4.3 数据库的安全初始化

1.关闭数据库开放端口
        vim /etc/my.cnf.d/mariadb-server.cnf
                        [mysqld]
                        skip-networking=1

        systemctl restart mariadb

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

2.执行安全初始化脚本
mysql_secure_installation

[root@Mariadb ~]# mysql                   ##默认不需要密码,初始化完毕后需要
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

[root@Mariadb ~]# mysql -uroot -p    ## -u 指定登陆用户 -p 密码

3.4.4 数据库的基本管理

1、查看
        SHOW DATABASES;                ##显示库名称
        USE mysql;                                  ##进入mysql库
        SHOW TABLES;                      ##显示库中的所有表
        SELECT * FROM user;              ##查询所有数据
        SELECT Host,User,Password FROM user;    ##查询指定字段
        SELECT Host FROM mysql.user WHERE User='root'

 

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'),('user2','123');     #插入数据
        FLUSH PRIVILEGES;                            ##刷新数据库

3.更改
ALTER TABLE redhat RENAME linux;            ##修改库名为redhat
ALTER TABLE linux ADD age varchar(4) AFTER password;    ##增加年龄字段在密码字段后
ALTER TABLE linux DROP age;                     ##删除字段

4.删除
DELETE from linux where username='user2' and age='18';    ##删除表中这一精确查找的行
DROP TABLE linux;                                                                       ##删除表
DROP DATABASE westos;                                                          ##删除库

 

3.4.5 数据库密码更改

1.数据密码更改
        mysqladmin  -uroot -p password

2.数据库密码破解
        systemctl stop mariadb
        mysqld_safe --skip-grant-tables &    
    
         mysql -uroot            ##无密码方式进入
        UPDATE mysql.user set Password=password('lee') WHERE User='root';        ##当未使用过mysladmin更改过密码

        UPDATE mysql.user set authentication_string=password('lee') WHERE User='root';    ##当使用过mysladmin更改过密码


        ps aux | grep mysql
        kill -9 mysql的所有进程
        systemctl start mariadb

 

 

3.4.6 phpmyadmin的安装

dnf install httpd php php-mysqlnd -y

systemctl enable --now httpd

systemctl stop firewalld

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/

cp config.sample.inc.php  config.inc.php

目录

3.4.1 数据库的介绍

3.4.2 mysql的安装和软件信息

3.4.3 数据库的安全初始化

3.4.4 数据库的基本管理

3.4.5 数据库密码更改

3.4.6 phpmyadmin的安装

3.4.7 数据库的备份和还原

3.4.8 数据库授权


3.4.7 数据库的备份和还原

数据库的备份
mysqldump -uroot -plee --all-database                          ##显示数据库所有+ (> /mnt/sql)备份所有数据库到sql文件
mysqldump -uroot -plee --all-database --no-data         ##备份表结构+同上

mysqldump -uroot -plee westos                                      ##备份westos数据库
mysqldump -uroot -plee westos > /mnt/westos.sql        ##备份westos数据库并输出westos.sql文件

还原数据库
方法1:
        mysql -uroot -p -e"DROP DATABASE westos;"        ##删除westos数据库
        mysql -uroot -plee -e"create database westos;"        ##创建westos数据库
        mysql -uroot -plee westos < /mnt/westos.sql              ##输入westos.sql数据库

 

方法2:

        vim /mnt/westos.sql                    ##打开备份数据库westos.sql文件在文件中输入
            CREATE DATABASE westos;
            USE westos;

            DROP TABLE IF EXISTS `linux`;
            /*!40101 SET @saved_cs_client     = @@character_set_client */;
            /*!40101 SET character_set_client = utf8 */;

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

 

 

3.4.8 数据库授权

CREATE USER westos@'%' identified by 'lee';            ##只能用localhost登陆
CREATE USER lee@localhost identified by 'lee';        ##可以通过网络或localhost登陆,需要主要服务器防火墙是否关闭
    测试:mysql -uwestos -pwestos -h172.25.254.220
SHOW GRANTS FOR lee@localhost;                            ##查看lee用户
GRANT SELECT ON westos.* TO lee@localhost;       ##授权lee用户可访问本机westos数据库
REVOKE SELECT ON westos.* FROM lee@localhost;        ##清除lee权力
DROP user lee@localhost;                           ##删除用户  用户@后加什麼就需写什么

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值