您的位置:首页 > 数据库 > MariaDB

mariadb数据库的管理

2019-08-10 17:39 941 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/llllyr/article/details/98871574

文章目录

  • 4. 用户数据库授权
  • 5. 数据库的备份与恢复
  • 6. 数据库密码的修改
  • 7. mariadb数据库的图形化管理
  • 1. mariadb数据库简介

    • MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品。在存储引擎方面,使用XtraDB(英语:XtraDB)来代替MySQL的InnoDB。 MariaDB由MySQL的创始人Michael Widenius(英语:Michael Widenius)主导开发,他早前曾以10亿美元的价格,将自己创建的公司MySQL AB卖给了SUN,此后,随着SUN被甲骨文收购,MySQL的所有权也落入Oracle的手中。MariaDB名称来自Michael Widenius的女儿Maria的名字。
    • GPL=General Public License 通用公共许可证
    • GNU=GNU is not Unix 开放源代码的组织

    2. mariadb 数据库的安装与使用

    (1)数据库服务端的安装

    yum install -y mariadb-server
    下载mariadb 服务端 mariadb-server
    systemctl start mariadb
    开启服务
    systenctk enable mariadb
    设置服务开机自启动

    (2)数据库的使用

    • mysql
      登录命令

    • mysqld
      d=domain 打入后台在后台运行

    • 数据库的语法:(1)区分命令用大写(2) 表及数据库名称用小写 (3)完整命令以;结尾

    • 数据库服务端口:3306端口

    • 数据库根目录:/var/lib/mysql

    • 数据库配置文件: /etc/my.cnf

    • vim /etc/my.cnf
        编辑数据库配置文件
      skip-networking=1
      关闭对外端口 保证数据库的安全性 1为关闭 0为开启
      netstat -antulpe | grep mysql
      查看开放端口状态

    • mysql_secure_installation
      数据库安全初始化



      安全初始化之后,登录数据库需要密码,更加安全;

    3. mariadb数据库管理

    3.1 mariadb数据库的基本管理

    • mysql -uroot -predhat -e "SHOW DATABASES;"
      不进入数据,在shell中查看数据库
    • mysql -uroot -predhat
      登录数据库
    • USE XXX;
      应用/进入数据库XXX

    (1)增

    CREATE DATABASE XXX;
    数据库XXX的建立

    (2)删
    DROP DATABASE XXX;
    删除数据库XXX

    (3)查
    SHOW DATABASES;
    查看数据库

    3.2 mariadb数据库中表的管理

    1. 表结构的管理

    (1)增

    CREATE TABLE xxx(yyy1 varchar(10)not null,yyy2 varchar(10)not null);
    建立新表xxx

    (2)删
    DROP TABLE xxx;
    删除表xxx

    (3)改
    ALTER TABLE xxx DROP;
    删除表xxx 某一字段
    ALTER TABLE xxx ADD;
    为表xxx添加字段


    (4)查
    SHOW TABLES;
    查看数据库中的表格
    DESC xxx;
    查看xxx表的结构

    2. 表中内容的管理

    (1)增

    INSERT INTO xxx valus('','');
    插入表中内容

    (2)删
    DELETE FROM xxx WHERE yyy='';
    从表xxx删除yyy=’'的数据

    (3)改
    UPDATE xxx SET yyy='' WHERE yyy='';
    修改表中数据

    (4)查
    SELECT * FROM xxx;
    查看表xxx所有内容
    SELECT yyy FROM xxx WHERE yyy= ;
    根据条件查找表

    4. 用户数据库授权

    • SELECT * FROM mysql.user;
      查看数据库中所有用户 用户信息在mysql库下的user表中

    (1)创建用户 超户权力

    1)

    CREATE USER westos@localhost IDENTIFIED BY 'westos';
    创建单个只允许本地登录的用户


    2)
    GRANT SELECT ON userdata.* TO westos@localhost IDENTIFIED BY 'westos'
    创建用户并授权



    (2)删除用户 超户权力

    DROP USER westos@localhost;
    .

    (3)授权 超户权力

    GRANT SELECT,INSERT ON westos.* TO westos@localhost;
    给westos用户查询与增添数据库westos中所有表的权限
    FLUSH PRIVILEGES;
    刷新用户表



    (4)查看权限

    SHOW GRANTS FOR westos@localhost;
    查看westos用户的权限

    (5)权限撤销 超户权力

    REVOKE INSERT ON westos.* FROM westos@localhost 撤销用户westos 对数据库westos的增添权限

    5. 数据库的备份与恢复

    5.1 数据库的备份

    • mysqldump -uroot -predhat westos > /mnt/userdata.sql
      完全备份westos库到/mnt/userdata.sql
    • mysqldump -uroot -predhat westos --no-data > /mnt/userdata.sql
      备份该数据库的格式,不备份数据 备份到/mnt/userdata.sql
    • mysqldump --all-databases --single-transcation --triggers --routines --events --host=127.0.0.1 --port=3306 --user=root --password=redhat > /mnt/userdata.sql
      完整备份数据库到/mnt/userdata.sql

    5.2 数据库的恢复

    mysql -uroot -predhat -e"DROP DATABASE userdata;"
    模拟环境:将westos数据库删除

    • 方法1
      1)

      vim /mnt/userdata.sql
      编辑备份的数据库文件

      CREATE DATABASE westos; ##该数据库已经被删除了在恢复之前必须保证该库存在
      USE westos;

    2)

    mysql -uroot -predhat < /mnt/database.sql
    恢复

    恢复后可以看到数据库中数据依旧存在:

    • 方法2
      1)
      mysql -uroot -predhat -e "CREATE DATABASE westos;"
      先建立好先前删除的库再恢复
      musql -uroot -predhat westos < /mnt/userdata.sql
      恢复

    6. 数据库密码的修改

    • 已知密码时
      mysqladmin -uroot -predhat passwd westos
      直接使用命令更改密码
    • 密码未知时
      1)
      systemctl stop mariadb
      停止先前的进程
      2)
      mysqld_safe --skip-grant-tables &
      用跳过认证授权表的模式启动服务 免密登录
      mysql
      免密登录数据库
      UPDATE mysql.user SET Password='westos' WHERE User='root'
      密码明文设置
      UPDATE mysql.user SET Password=password('westos') WHERE User='root'
      密码加密设置

    3)

    kill -9 mysql进程号
    结束跳过授权认证文件方式登录数据库的进程
    systemctl restart mariadb
    重新启动服务 修改密码成功






    7. mariadb数据库的图形化管理

    (1)配置:
    1)

    yum install -y httpd
    安装apache服务下的httpd资源共享服务
    systemctl start httpd
    开启资源共享服务
    systemctl enable httpd
    设置服务开机自启动

    2)

    firewqall-cmd --permanent --add-service=http
    为火墙添加http服务
    firewall-cmd --reload
    火墙重新加载

    3)

    yum install -y php
    安装动态插件
    yum install -y php-mysql
    .
    yum install -y php-mbstring-5.4.16-21.el7.x86_64.rpm
    安装扩展插件

    tar zxf phpMyAdmin-4.0.10.20-all-languages.tar.gz -C /var/www/html
    安装扩展插件
    cd /var/www/html
    .
    mv phpMyAdmin-4.0.10.20-all-languages phpMyAdmin
    重命名更方便浏览

    systemctl restart httpd
    重启http服务

    (2)测试:
    浏览器访问:http://172.25.254.201/phpMyAdmin
    输入帐号密码登录数据库:root–>redhat

    内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
    标签: