zoukankan      html  css  js  c++  java
  • MYSQL 管理笔记(一)

    一、查看MySQL 版本
     
    1、在终端下:mysql -V  
    2、在mysql中:mysql> status;
    3:在help里面查找   mysql --help | grep Distrib
    4:使用mysql的函数  mysql> select version();
     
    二、Mysql 安装
    1、 yum list | grep mysql   命令来查看yum上提供的mysql数据库可下载的版本
    2、yum install -y mysql-server mysql mysql-deve  使用yum默认安装,一般不是最新的版本,可到官网去现在rpm 包进行安装
     
    三、Mysql 配置
    注意:如果我们是第一次启动mysql服务,mysql服务器首先会进行初始化的配置,如:
    1、service mysqld start 
    第一次启动设置 root 账号 密码
    2、mysqladmin -u root password  'new-password'
    3、 chkconfig --list | grep mysqld   命令来查看mysql服务是不是开机自动启动 
    mysqld             0:关闭    1:关闭    2:关闭    3:关闭    4:关闭    5:关闭    6:关闭
    4、chkconfig mysqld on  设置开机启动
    chkconfig --list | grep mysql  再次查看

    mysqld             0:关闭    1:关闭    2:启用    3:启用    4:启用    5:启用    6:关闭

     
    四、mysql数据库的主要配置文件
     
    1./etc/my.cnf 这是mysql的主配置文件 可以使用cat 查看
    2、mysql数据库的数据库文件通常是存放在了/ver/lib/mysql这个目录下
    3./var/log mysql数据库的日志输出存放位置 可以自己在my.cnf 中配置
     
     
    五、切底删除mysql
    rpm -qa|grep mysql                         查看是否还有mysql软件

    yum remove mysql mysql-server mysql-libs compat-mysql51     

    rm -rf /var/lib/mysql                         删除mysql 文件目录
    rm /etc/my.cnf                                  删除mysql 配置文件
     

    可以通过 netstat -anp 命令来查看一下,Linux系统是否在监听 3306 这个端口号:

    六、用户管理

    1、创建用户:

    CREATE USER 'dog'@'localhost' IDENTIFIED BY '123456'
    CREATE USER 'pig'@'192.168.1.101_' IDENDIFIED BY '123456'
    CREATE USER 'pig'@'%' IDENTIFIED BY '123456'
    CREATE USER 'pig'@'%' IDENTIFIED BY ''
    CREATE USER 'pig'@'%';

            说明:username – 你将创建的用户名, host – 指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost, 

             如果想让该用户可以从任意远程主机登陆,可以使用通配符%. password –  该用户的登陆密码,密码可以为空,如果为空则该用户可以不需要密码登陆服务器.

    2、授权命令:

    GRANT privileges ON databasename.tablename TO 'username'@'host'
    GRANT SELECT, INSERT ON test.user TO 'pig'@'%'; 
    GRANT ALL ON *.* TO 'pig'@'%';

            说明: privileges – 用户的操作权限,如SELECT , INSERT , UPDATE  等(详细列表见该文最后面).

            如果要授予所的权限则使用ALL.;databasename –  数据库名,tablename-表名,如果要授予该用户对所有数据库和表的相应操作权限则可用*表示, 如*.*.

            如果想让该用户可以授权,用以下命令:

            GRANT privileges ON databasename.tablename TO 'username'@'host' WITH GRANT OPTION;

    3、设置与更改用户密码

        SET PASSWORD FOR 'username'@'host' = PASSWORD('newpassword');

      如果是当前登陆用户用 SET PASSWORD = PASSWORD("newpassword");

    4、撤销用户权限  REVOKE privilege ON databasename.tablename FROM 'username'@'host';

        REVOKE SELECT ON *.* FROM 'pig'@'%';

        注意: 假如你在给用户’pig’@'%’授权的时候是这样的(或类似的):GRANT SELECT ON test.user TO  ‘pig’@'%’,

         则在使用REVOKE SELECT ON *.* FROM  ‘pig’@'%’;

        命令并不能撤销该用户对test数据库中user表的SELECT 操作.相反,如果授权使用的是GRANT SELECT ON  *.* TO ‘pig’@'%’;

        则REVOKE SELECT ON test.user FROM  ‘pig’@'%’;命令也不能撤销该用户对test数据库中user表的Select 权限.

        具体信息可以用命令SHOW GRANTS FOR ‘pig’@'%’; 查看.

    5、删除用户 DROP USER ‘username’@'host’;

    七、开启慢查询

    1、动态开启,不用重启服务

         幸好在mysql5.1中已经为我们提供了在线设置慢查询日志的方法,

        通过设置mysql系统变量就可以达到这个目的。这样就不用重启mysql了。

        在线开启慢查询日志:
      1. mysql > set global slow_query_log=1;
      2. mysql > set global long_query_time=3;
      3. mysql > set global slow_query_log_file=’mysql-slow.log’;
                如果不需要记录慢查询了,可以很方便的关闭:
      1. mysql > set global slow_query_log=0;

                注意:在5.1.29以前用的是log_slow_queries变量,5.1.29及之后的版本log_slow_queries变量就用slow_query_log变量代替了。

                            slow_query_log指定开启还是关闭,slow_query_log_file指定日志文件filename,long_query_time指定慢查询的阈值。

                注意2:long_query_time变量从MySQL 5.1.21开始,可以被设置的最小值为0,且精度可以被设置到微秒级(例如值可以被设置为 1.000002,即1秒又2微秒);

                            而在5.1.21之前的版本,这个变量可以被设置的最小值为1,且只能为整型。

    2、在my.cnf 在配置

     

    3、查看慢查询日志

    命令mysqldumpslow 分析 MYSQL

     

    show variables like ‘%slow%’; 查看MYSQL 慢查询日志存放路劲

     

    mysqldumpslow 的常用参数如下:

    -s 后面接下面的参数表示 mysqldumpslow 结果显示的顺序!

    c query执行的次数

    t sql执行的时间

    l lock锁表的时间

    r sql返回的行数

    ac,at,al,ar,表示倒序排列

    -t,是top n,即为返回前面n条数据。

    -g,后边可以写一个正则匹配模式,大小写不敏感

    我常用 mysqldumpslow -s al -t 20 slow.log

     
    罗登:一个能思考,肯苦干的人!
  • 相关阅读:
    搭建Apache服务器并使用自签证书实现https访问
    常见加密算法
    awk命令用法
    systemd的新特性及常见的systemd unit类型分析
    kickstart文件制作与光盘镜像制作
    grub启动引导程序配置及命令行接口详解
    Linux启动流程(CentOS6)
    Linux相关网络命令
    rpm与yum,at与crontab,sed命令使用
    腾讯明眸极速高清升级2.0,助力韩国赛事超高清5G直播
  • 原文地址:https://www.cnblogs.com/isoo/p/3606159.html
Copyright © 2011-2022 走看看