对最近mysql的常用运维命令进行整理

查看使用的哪个配置文件启动的mysql

1.  ps aux|grep mysql|grep 'my.cnf'
如果启动的命令中选择了配置文件,则可以查询出来,也可能查询不到。 2. mysql --help|grep 'my.cnf'
输出:
order of preference, my.cnf, $MYSQL_TCP_PORT,
/etc/my.cnf /etc/mysql/my.cnf /opt/app/mysql/etc/my.cnf ~/.my.cnf
启动时选择配置文件的默认顺序从前到后。 3. locate my.cnf命令可以列出所有的my.cnf文件,或者使用find命令也可以

账户的创建修改和设置权限

1.查看当前已有用户

    连接mysql的通用方式,可以省略其中一部分参数 :
mysql -uroot -h 127.0.0.1 -P 3306 -p 注意:大写P是端口 小写p是密码

2. create user创建用户和修改密码和删除

2.1 创建用户:

CREATE USER 'username'@'host' IDENTIFIED BY 'password';


例子: CREATE USER 'vinter'@'localhost' IDENTIFIED BY '123456';
注意
用户名和host必须加引号否则不能运行
create user vinter;
此种写法账户无密码,可以在任意客户端任意ip下登录
2.2 修改密码:
2.2.1 最容易记住的,就是直接update user表,update成功后要使用 flush privileges;更新

例如

 update user set password = password('111111') where user = 'vinter';

 flush privileges;
2.2.2 使用mysqladmin语法:mysqladmin -u用户名 -p旧密码 password 新密码
mysqladmin -u vinter -p 123 password 456;
2.2.3 使用set password 语句修改

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

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

    set password forr 'vinter'@'%'=password('haojia');
2.3 删除用户:
DROP USER username@localhost;

3.使用grant语句设置权限

1. 赋予权限:

格式语句:

grant 权限1,权限2,...权限n on 数据库名称.表名称 to 用户名@用户地址 identified by '连接密码' [with grant option];

权限取值如下:

select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file等

  数据库名和表名可以使用通配符来表示所有,比如 dbname..

 

例子:

grant all privileges on testdb.* to '‘'vinte'r@'127.0.0.1' identified by '111111';

grant insert,delete,select,update on testdb.* to vinter@127.0.0.1 identified by '111111';

identified by 可以不写,如果写会更改密码为新密码。

注:如果带了 with grant option则被授予权限的人,可以把此权限再转授权(传递)给其他用户。

2. 撤销权限

语法:REVOKE 权限列表 ON db.table FROM 'username'@'localhost';

REVOKE ALL PRIVILEGES ON *.* FROM 'vinter'@'%';

revoke update on *.* from 'vinter'@'%' ;

设置远程登录

我们先说一下实现远程登录mysql的条件

首先mysql必须设置相关的权限,允许该账户远程登录,第二需要防火墙设置了3306端口的远程访问。

1. mysql设置远程访问

可以使用grant语句,可以直接更新user表中相关项。

例子中用户为vinter,ip为192.168.1.111
//固定ip:
grant all privileges on *.* to 'vinter'@'192.168.1.111' identified by '123' with grant option; insert into user (host,user,password) values('192.168.1.111','vinter',password('123')); //不限制ip
grant all privileges on *.* to 'vinter'@'%' identified by '123' with grant option; insert into user (host,user,password) values('%','vinter',password('123'));

2. 防火墙设置(centos7)

常用的如下几个其他的见文后附录:

  • 添加一个端口

firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,没有此参数重启后失效)

  • 重新载入

firewall-cmd --reload

  • 查看

firewall-cmd --zone=public --query-port=80/tcp

  • 查看所有打开的端口

firewall-cmd --zone=public --list-ports

附录 firewalld基本操作

1、firewalld的基本使用

启动: systemctl start firewalld

关闭: systemctl stop firewalld

查看状态: systemctl status firewalld

开机禁用 : systemctl disable firewalld

开机启用 : systemctl enable firewalld

2.systemctl是CentOS7的服务管理工具中主要的工具,它融合之前service和chkconfig的功能于一体。

启动一个服务:systemctl start firewalld.service

关闭一个服务:systemctl stop firewalld.service

重启一个服务:systemctl restart firewalld.service

显示一个服务的状态:systemctl status firewalld.service

在开机时启用一个服务:systemctl enable firewalld.service

在开机时禁用一个服务:systemctl disable firewalld.service

查看服务是否开机启动:systemctl is-enabled firewalld.service

查看已启动的服务列表:systemctl list-unit-files|grep enabled

查看启动失败的服务列表:systemctl --failed

3.配置firewalld-cmd

查看版本: firewall-cmd --version

查看帮助: firewall-cmd --help

显示状态: firewall-cmd --state

查看所有打开的端口: firewall-cmd --zone=public --list-ports

更新防火墙规则: firewall-cmd --reload

查看区域信息: firewall-cmd --get-active-zones

查看指定接口所属区域: firewall-cmd --get-zone-of-interface=eth0

拒绝所有包:firewall-cmd --panic-on

取消拒绝状态: firewall-cmd --panic-off

查看是否拒绝: firewall-cmd --query-panic

添加端口

firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,没有此参数重启后失效)

重新载入

firewall-cmd --reload

查看

firewall-cmd --zone=public --query-port=80/tcp

删除

firewall-cmd --zone=public --remove-port=80/tcp --permanent

mysql用户操作、权限分配、远程登录设置的更多相关文章

  1. linux操作日志:远程登录设置

    想要远程linux服务器,首先需要在服务器上开通ssh服务,安装命令如下: sudo apt-get install openssh-server   在上图的提示中,输入“y”,继续等待安装,安装成 ...

  2. Mysql 用户,权限管理的几点理解。

    前两天项目数据库要移植到mysql,为此临时抓了几天很久没用的mysql. 公司的数据库比较简单,从oracle迁移到mysql很简单,但是,中间的权限管理让我感觉既简单又复杂..简单是因为网上关于m ...

  3. 入门MySQL——用户与权限

    前言:  前面几篇文章为大家介绍了各种SQL语法的使用,本篇文章将主要介绍MySQL用户及权限相关知识,如果你不是DBA的话可能平时用的不多,但是了解下也是好处多多. 1.创建用户 官方推荐创建语法为 ...

  4. 打通MySQL的操作权限

    打通MySQL的操作权限 前面已经总结了<XAMPP的配置与使用>,虽然可以直接通过GUI控制面板去启动MySQL服务,但是有些相关的操作则需要在Windows中的CMD命令窗口中去对My ...

  5. mysql 用户及权限管理 小结

    MySQL 默认有个root用户,但是这个用户权限太大,一般只在管理数据库时候才用.如果在项目中要连接 MySQL 数据库,则建议新建一个权限较小的用户来连接. 在 MySQL 命令行模式下输入如下命 ...

  6. MySQL Study之--MySQL用户及权限管理

    MySQL Study之--MySQL用户及权限管理     MySQLserver通过MySQL权限表来控制用户对数据库的訪问.MySQL权限表存放在mysql数据库里.由mysql_install ...

  7. 用grant命令为用户赋权限以后,登录时,出现:ERROR 1045 (28000)

    ERROR 1045(28000)信息是因为权限的问题.这个ERROR分为两种情况: 第一种: ERROR 1045 (28000): Access denied for user 'root'@'l ...

  8. Windows远程桌面,连接被拒绝,因为没有授权此用户帐户进行远程登录。

    Windows 服务器远程连接的时候,出现错误:“连接被拒绝,因为没有授权此用户帐户进行远程登录.”,导致无法远程登录服务器,如下图所示: 问题分析 该错误一般是由于 Windows 远程桌面相关权限 ...

  9. 网络实验 02-交换机的Telnet远程登录设置

    交换机的Telnet远程登录设置 一.实验目标 掌握采用telnet方式配置交换机的方法 二.技术原理 1. 配置交换机的管理IP地址(计算机的IP地址与交换机管理IP地址在同一网段) 2. 为tel ...

  10. Windows2008R2允许多用户远程登录设置

    Windows 2008 R2终端服务器安装配置 后面的一律下一步就可以安装完成了,下面是如何设置多用户远程登陆. Windows2008允许多用户远程登录设置 服务器重启,以上配置全部生效.

随机推荐

  1. Apollo 5 教你怎么把自己的配置放到 Spring 环境中

    目录: 前言 处理方案 简单例子 前言 有的时候,你可能需要在 Spring 环境中放入一些配置,但这些配置无法写死在配置文件中,只能运行时放入.那么,这个时候该怎么办呢? Apollo 就是搞配置的 ...

  2. Bootstrap学习记录-1.Navigation

    Bootstrap中的导航栏功能需要添加bootstrap.css.jquery.js.bootstrap.js,其中,jquery.js文件是bootstrap.js文件中必须的,否则就会抛出异常信 ...

  3. Java集合之HashSet源码分析

    概述 HashSet是基于HashMap来实现的, 底层采用HashMap的key来保存数据, 借此实现元素不重复, 因此HashSet的实现比较简单, 基本上的都是直接调用底层HashMap的相关方 ...

  4. TestOps - 最健壮性的测试角色

    一十一 发表于 2018-03-02 09:10:08 TestOps   最具影响力的测试运维一体化综合平台. DevOps实现了从代码到服务的快速落地,而TestOps集成了DevOps效率,更是 ...

  5. 初学HTML-5

    表格标签:用来给一堆数据添加表格语义. 格式:<table> <tr> <td></td> </tr> </table> tab ...

  6. JQuery基本知识汇总;JQuery常用方法;浅入了解JQuery

    一.jQuery对象与JavaScript对象 ①JavaScript入口函数比jQuery入口函数执行的晚一些: JQuery的入口函数会等页面加载完成才执行,但是不会等待图片的加载: JavaSc ...

  7. vue点击元素变色兄弟元素不变色

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. Python 3.4:Chromedrive,IEDriverServer,geckoDriver

    import sys; import time; import os; #from huoche import PythonTickt; from splinter.browser import Br ...

  9. layui 数据表格+分页+搜索+checkbox+缓存选中项数据

    在做数据表格的时候遇到了很多坑, 今天整理一下方便以后使用. 主要功能是使用数据表格, 做分页,做搜索,  还有checkbox,  支持全选. 当选中一些数据的时候, 数据切换页面数据在切换回来后, ...

  10. JavaScript 频繁发射事件处理的优化 --- 函数节流/事件稀释

    引子:昨天面试时面试官问了如何实现一个固定导航栏,在我答完后面试官问我可能存在哪些问题,如何优化? 这个问题我答得不太好,但现在回想起来应该有两个问题: 1. 把 fixbar元素 position: ...