zoukankan      html  css  js  c++  java
  • mysql 运维常见操作

    初始安装并赋予密码:
     
    [root@Alinx html]# yum install -y mysql mysql-server                         #安装mysql可与段与服务器端
    [root@localhost ~]# /usr/bin/mysqladmin -u root password "gslixiong"         #赋予root管理员密码!
     
     
    进入数据库更改密码,并解决密码复杂度:
     
    mysql> set global validate_password_policy=0;  #定义复杂度
    mysql> set global validate_password_length=1;  #定义长度 默认是8
    mysql>set password for 'root'@'localhost'=password('123456');    授权并创建用户(本地) 
    mysql> grant all privileges on 51baohumo.* to 'baohumo' identified by 'Ghuxi3';(全网)授权并创建用户
    mysql> flush privileges;
     
     
    单独改一个用户密码:
      
    SET PASSWORD FOR 'zabbix'@'localhost' =PASSWORD('zabbix');
    UPDATE mysql.user SET password=PASSWORD(’新密码’) WHERE User=’root’;
     
     
     
    查看用户列表
     
    SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;
     
    查看数据库中具体某个用户的权限
     
    mysql> show grants for ; 
     
     
     
    密码设置相关
     
    1、mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpassword');
    2、mysql> use mysql; mysql> UPDATE userSETPassword=PASSWORD('newpassword') WHERE USER='root'; mysql> FLUSH PRIVILEGES;
    3、# mysqladmin-u root password oldpassword'newpassword'(非第一次设置)
    4、# mysqladmin-u root password'newpassword'(第一次设置)
    5、# [mysqld]  --skip-grant-tables &# mysql-u root mysql(用空密码方式使用root用户登录,同时使用名为mysql的那个系统内置数据库--root和mysql之间必须有空格) mysql> UPDATE userSETPassword=PASSWORD('newpassword') WHERE USER='root'; mysql> FLUSH PRIVILEGES;
     
     
    mysql 密码问题
     
    MySQL密码的恢复方法之一
    1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库。 因为在重新设置MySQL的root密码的期间,MySQL数据库完全出于没有密码保护的 状态下,其他的用户也可以任意地登录和修改MySQL的信息。可以采用将MySQL对外的端口封闭,并且停止Apache以及所有的用户进程的方法实现服务器的准安全状态。最安全的状态是到服务器的Console上面操作,并且拔掉网线。
    2.修改MySQL的登录设置:
    # vi /etc/my.cnf
    在[mysqld]的段中加上一句:skip-grant-tables 保存并且退出vi。
    3.重新启动mysqld
    # /etc/init.d/mysqld restart  ( service mysqld restart )
    4.登录并修改MySQL的root密码
    mysql> USE mysql ;
    mysql> UPDATE user SET Password = password ( 'new-password' ) WHERE User = 'root' ;
    mysql> flush privileges ;
    mysql> quit
    5.将MySQL的登录设置修改回来
    # vi /etc/my.cnf
    将刚才在[mysqld]的段中加上的skip-grant-tables删除
    保存并且退出vi。
    6.重新启动mysqld
    # /etc/init.d/mysqld restart   ( service mysqld restart )
    7.恢复服务器的正常工作状态
    将步骤一中的操作逆向操作。恢复服务器的工作状态。
     
    MySQL密码的恢复方法之二
     
    如果忘记了MySQL的root密码,可以用以下方法重新设置:
    1. KILL掉系统里的MySQL进程;
    killall -TERM mysqld
    2. 用以下命令启动MySQL,以不检查权限的方式启动;
    safe_mysqld --skip-grant-tables &
    3. 然后用空密码方式使用root用户登录 MySQL;
    mysql -u root
    4. 修改root用户的密码;
    mysql> update mysql.user set password=PASSWORD('新密码') where User='root';
    mysql> flush privileges;
    mysql> quit
    重新启动MySQL,就可以使用新密码登录了
     
    MySQL密码的恢复方法三
    有可能你的系统没有 safe_mysqld 程序(比如我现在用的 ubuntu操作系统, apt-get安装的mysql) , 下面方法可以恢复
    1. 停止mysqld;
    /etc/init.d/mysql stop
    (您可能有其它的方法,总之停止mysqld的运行就可以了)
    2. 用以下命令启动MySQL,以不检查权限的方式启动;
    mysqld --skip-grant-tables &
    3. 然后用空密码方式使用root用户登录 MySQL;
    mysql -u root
    4. 修改root用户的密码;
    mysql> update mysql.user set password=PASSWORD('newpassword') where User='root';
    mysql> flush privileges;
    mysql> quit
    重新启动MySQL
    /etc/init.d/mysql restart
    就可以使用新密码 newpassword 登录了。
     
              
     
     
    1.安装优化# mysql 安装完成之后需要运行mysql_secure_installation脚本
      
     
     
     
    mysql> flush privileges;
                   Query OK, 0 rows affected (0.00 sec)    手动刷新权限表命令
     
     
    mysql用户管理与授权(不区分大小写)
     
    1.可以给用户分配一个库的管理权限或者这个库的某一些执行语句(select update等语句)
        
        
         mysql> CREATE USER username IDENTIFIED BY 'password';          #创建用户
         mysql>grant all privileges on alinx.* to 'lijie'@localhost identified by 'password'; 授权并改密码
         mysql>  DROP USER username@localhost;  #删除用户
     
    2.查看版本:
        
     mysql> select version()g
     
    3.查看某一个用户的授权
             
     mysql> show grants for tom;
     
     
    4.进入数据库
           
       mysql> use alinx;
     
    5.查询用户列表
              
    mysql> select user,host from user;
     
    6.单独修改密码
             
     mysql> set password for alinx=password('t48@141129');
    Query OK, 0 rows affected (0.00 sec)
     
    7.移除某一个用户的权限
              
    mysql> revoke all on *.* from alinx;
    Query OK, 0 rows affected (0.00 sec)
     
    8.当前数据库查看
           
       mysql> select database();
     
    9.查询当前数据
     
    mysql> select * from books;
     
    10.以行的方式显示数据库
     
    mysql> show databases G
     
    11.面交互查询(脚本中使用较多)
     
     
    [root@Alinx ~]# mysql -e 'show databases' -uroot -pgslixiong
    +--------------------+
    | Database           |
    +--------------------+
    | information_schema |
    | HA                 |
    | alinx              |
    | alinx-test         |
    | book               |
    | mysql              |
    | school             |
    +--------------------+
     
    12.创建数据库
     
    create database 数据库名称
     
     
    13.删除数据库
     
     
    drop命令用于删除数据库。
     
    drop命令格式:drop database <数据库名>;
     
     
     
     
     
    注意: 修改完成一定要重启服务或者刷新权限表   命令: mysql> flush privileges;
     
  • 相关阅读:
    [javaSE] 数组(获取最值)
    [javascript] Promise简单学习使用
    [javaSE] 基本类型(String相关)
    [android] 手机卫士黑名单功能(ListView结合SQLite增删改)
    [PHP] 重回基础(IO流)
    [PHP] 重回基础(Array相关函数)
    [PHP] 重回基础(date函数和strtotime函数)
    [HTML5] Canvas绘制简单图片
    [javaSE] 集合框架(TreeSet)
    [android] 手机卫士黑名单功能(ListView优化)
  • 原文地址:https://www.cnblogs.com/Alinxgood/p/7831379.html
Copyright © 2011-2022 走看看