• MySQL高级管理


    #mysql数据库密码的修改

    一、mysql密码的修改与恢复

      1.修改密码

        mysqladmin -u root -p123 password 456

      数据库内修改

        method.first:

          update mysql.user set password=password('123') where user='root' and host='localhost';

          flush privileges;

        method.second:

          set password for root@'localhost' =password('123');

          注: 此方法无序刷新权限

        method.third:

          mysql_secure_installation

          注: 安全配置向导,会对数据库进行简单的优化

    二、忘记mysql密码后的恢复

      1.跳过mysql安全验证,直接mysql无密码登录,然后进入修改密码

    /etc/init.d/mysqld  stop
    mysqld_safe --skip-grant-table --user=mysql &>/dev/null &

    三、如何防止mysql密码泄露

      1. 设置环境变量强制linux不记录敏感历史命令

        临时生效(命令行操作):HISTCONTROL=ignorespace  然后[ root@ 001 ~] # mysql -uboy -pboy123

        永久生效:

            echo  ' HISTCONTROL=inorespace ' >>/etc/bashrc   然后source生效

      2. 通过history删除命令行记录

        清空所有记录   history  -c

        删除指定行记录  history -d 行号

        清空历史记录文件  >~/.bash_history

      3.把密码写入my.cnf 配置文件的 [ mysqld ] 下添加 skip-grant-tables  重启数据库生效

     四、数据库的备份与恢复

      1、单库备份与还原

    备份
    mysqldump -uroot -p123456 lll>/opt/backup/lll.sql
    注:此操作只备份其中的表(包括创建表的语句和数据)
    
    还原
    mysql -uroot -p123 -e ' create database lll;'
    mysql -uroot -p123 lll < /opt/backup/lll.sql
    

      2.多库备份与还原

    备份
    mysqldump -uroot -p123 库名 表1 表2>/opt/backup/mysql_bak_db.sql
    
    还原
    mysql -uroot -p123 库名 </opt/backup/mysql_bak_db.sql
    

      3.全库备份

    mysqldump -uroot -p123 -A >/opt/backup/mysql_bak_db.sql
    或
    mysqldump  -uroot -p123 --all-databases > /opt/backup/mysql_bak_db.sql
    

      4.还原备份

    #备份lol数据库
    [root@ c6s02 ~]# mysqldump -uroot -p123456 -B lol >lol.sql
    
    
    #先删除lol数据库
    [root@ c6s02 ~]# mysql -uroot -p123456
    
    mysql> show databases;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | lol                |
    | mysql              |
    | performance_schema |
    | test               |
    | wg                 |
    +--------------------+
    6 rows in set (0.00 sec)
    
    mysql> drop database lol;
    Query OK, 3 rows affected (0.03 sec)
    
    mysql> show databases;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | mysql              |
    | performance_schema |
    | test               |
    | wg                 |
    +--------------------+
    5 rows in set (0.00 sec)
    
    mysql> q
    
    #测试恢复并查看
    [root@ c6s02 ~]# mysql -uroot -p123456 <lol.sql
    Warning: Using a password on the command line interface can be insecure.
    
    [root@ c6s02 ~]# mysql -uroot -p123456
    mysql> show databases;
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | lol                |
    | mysql              |
    | performance_schema |
    | test               |
    | wg                 |
    +--------------------+
    6 rows in set (0.00 sec)
    
    mysql> select * from lol.hero;
    +----+--------+--------+-----------+--------+
    | id | 角色   | 职业   | 攻击力    | 血量   |
    +----+--------+--------+-----------+--------+
    |  1 | 蛮王   | 战士   |       200 | NULL   |
    |  2 | 狗头   | 战士   |       100 | NULL   |
    |  3 | 剑圣   | 战士   |       300 | NULL   |
    +----+--------+--------+-----------+--------+
    3 rows in set (0.00 sec)
    

      (2)、method.second:

    [root@ c6s02 ~]# mysql -uroot -p123456
    mysql> source /root/lol.sql
    

    更多操作详情参考如下:

    https://github.com/crazywjj/bawei

    仁者不忧知者不惑勇者不惧

  • 相关阅读:
    SEUOJ上几道水题
    项目计划
    软件工程03
    件工程个人作业02
    软件工程个人作业01
    学习进度条
    软件工程第一次博客
    异常分析
    多态
    Java覆盖
  • 原文地址:https://www.cnblogs.com/security-guard/p/12020635.html
Copyright © 2020-2023  润新知