打通MySQL的操作权限

前面已经总结了《XAMPP的配置与使用》,虽然可以直接通过GUI控制面板去启动MySQL服务,但是有些相关的操作则需要在Windows中的CMD命令窗口中去对MySQL数据库进行一些操作,而在此过程中遇到了一些连接权限与密码设置方面的问题,在这里做一个归纳总结。

1. MySQL服务的启动

cmd中输入net start mysql 提示:服务名无效 请键入NET HELPING 2185以获得更多的帮助

进入MySQL的bin目录,并在bin目录打开命令行窗口,在命令行窗口输入:mysqld --install,回车,提示:Service successfully installed。表示安装MySQL服务成功,命令行窗口输入:net start mysql ,可以正常启动。


这样在XAMPP的控制面板中会发现MySQL的左侧方框中会多一个绿色的 √ ,此外,在cmd命令行中启动或关闭mysql服务,在XAMPP的控制面板中都会有实时的关联和log提示。


2. 本地环境变量的配置

在cmd中输入mysql时输出 ‘mysql’不是内部或外部命令,也不是可运行的程序或批处理文件。


这是由于没有配置本地环境变量所造成的。添加的方法:计算机右键属性,高级系统设置,环境变量,找到用户变量PATH进行编辑,添加 ;F:\xampp\mysql\bin 后点确定。重启cmd,再次输入mysql后回车即可进入mysql。此外,还可通过命令行进入mysql安装目录中的bin目录(F:\xampp\mysql\bin)去执行语句,一样可行。


3. 登录mysql数据库

解决了环境变量问题,通常情况下,在DOS命令窗口输入 mysql -hlocalhost -uroot -p 回车 进入mysql数据库。 注意,有些系统环境下需要输入 mysql -h localhost -u root -p 。其中-h表示服务器名,localhost表示本地;-u为数据库用户名,root是mysql默认用户名;-p为密码,如果设置了密码,可直接在-p后链接输入,如:-p123456,由于安装XAMPP时默认没有设置密码,在显示Enter password时,直接回车即可。


这样表示已经进入mysql数据库,并且可以进行相关操作。输入show databases; 可以显示数据库(mysql数据库中的命令必须以分号结尾)


如果要退出mysql数据库,输入 exit; 回车。


4. 修改mysql的登录密码

【方法一】set password

密码为空,总归不太好,于是想要修改密码为123456,连接mysql数据库后,输入命令 set password for root@localhost = password('123456');


查看修改情况,输入 Select User.Password from mysql.user;


第一个不为空的Password是刚刚root用户所重设的密码123456,这里是进行了一定的加密处理的。

退出登录之后再次输入 mysql -hlocalhost -uroot -p 登录,


第一次直接回车,结果报错,第二次输入123456后回车,成功进入mysql。

【方法二】mysqladmin

修改密码的第二种方法——用mysqladmin

a. 打开终端win+r输入cmd回车即可打开;
b. 修改MySQL的root用户密码格式:mysqladmin -u用户名 -p旧密码 password 新密码 例子:mysqladmin -uroot -p123456 password
上面例子将用户root原来的密码123456改为新密码空,这里只需连续两次回车即可。


再把密码改为654321,然后再改为123456,注意,必须是在Windows\System32路径下执行这条语句。


【方法三】UPDATE方式

还有一种方法——用UPDATE直接编辑user表,

a. 首先登录MySQL。

b. 连接权限数据库: use mysql; 。

c. 改密码:update user set password=password("123456") where user="root";(别忘了最后加分号) 。

d. 刷新权限(必须步骤):flush privileges;


重新登录,输入新密码123456就ok了;

5. 忘记root密码

如果忘记了root密码,可以通过以下步骤解决,

1)关闭正在运行的MySQL服务。

2)打开DOS窗口,转到mysql\bin目录。

3) 输入mysqld --skip-grant-tables 回车。--skip-grant-tables 的意思是启动MySQL服务的时候跳过权限表认证。


[Warning] TIMESTAMP with implicit DEFAULT value is deprecated.Please use --explicit_defaults_for_timestamp server option (seedocumentation for more details)

解决以上Warning的办法是:

step1: 进入cmd模式,输入命令:net stop mysql 停止开机启动的 mysql services(如果是手动启动可以跳过Step1,我的pc是开机启动),我电脑上的mysql services名字是mysql,你的名字可能不一样!, net stop xxx (xxx代表你的mysql services名字)


step2: 找到mysql安装目录下的 my.ini文件,在[mysqld]下方添加:

explicit_defaults_for_timestamp = true
添加好后像这样:
[mysqld]
explicit_defaults_for_timestamp = true

step3: 现在开始使用mysqld命令手动启动mysql services,既然是手动启动,肯定要为该命令指定启动配置文件my.ini的存放路径,我的路径是:E:\xampp\mysql

在cmd模式下输入:mysqld --defaults-file="E:\xampp\mysql\my.ini" --skip-grant-tables


ok,这个问题解决了。接下来继续上面中断的步骤:


4)再开一个DOS窗口(因为刚才那个DOS窗口已经不能动了),输入mysql回车,如果成功,将出现MySQL提示符 >


5)连接权限数据库: use mysql; 。

6)改密码:update user set password=password("root") where user="root";(别忘了最后加分号) ,或者 UPDATE mysql.user SET Password=PASSWORD("newpassword")  WHERE User='root' and Host='localhost';

7)刷新权限(加载权限表,让新密码生效!必须步骤):flush privileges; 

8)退出 quit。

重启mysql服务,使用用户名root和刚才设置的新密码root登录就ok了。

6. 结束语

以前经常遇到这些细节问题,后来又会因为环境异动再次遇到哪些琐碎的且当时本以为不会再遇到的问题,久而久之,发现这样循环往复,每次都要重新查找搜索一番,浪费了不少时间,这让我想起了一句古语——

天下难事必作于易,天下大事必作于细。              ——《道德经》

打通MySQL的操作权限的更多相关文章

  1. 远程服务器设置Mysql的操作权限

    mysql -u root -p; root用户输入密码登录mysql服务器 select host, user  from mysql.user; 查询数据库的所有用户以前权限的ip   host: ...

  2. Mysql资料 用户权限详解

    目录 一.MySQL权限详解 设置MySQL用户资源限制 用户资源限制执行操作 二.MySQL权限级别介绍 MySQL权限级别 MySQL创建权限 MySQL删除与插入权限 MySQL修改与触发器权限 ...

  3. MySql 用户 及权限操作

    bin/msyql -h host -u user -p    bin/mysql -u mysql -p  本地登录 如无密码按回车直接进入mySql   bin/mysqladmin -u roo ...

  4. 第八章| 2. MySQL数据库|数据操作| 权限管理

    1.数据操作 SQL(结构化查询语言),可以操作关系型数据库 通过sql可以创建.修改账号并控制账号权限:  通过sql可以创建.修改数据库.表:  通过sql可以增删改查数据: 可以通过SQL语句中 ...

  5. MySQL数据库的权限问题操作及基本增删改查操作

    前面我们讲了mysql的基本内容,现在我们详细的了解一下mysql中的具体操作. what's the SQl SQL(Structured Query Language 即结构化查询语言) SQL语 ...

  6. mysql用户与权限操作

    本文所有操作均在mysql8.1下验证,mysql5.x部分语句不适用. 1.创建用户 '; # 创建用户test,密码123456,%表示允许在所有主机登陆 用户表为mysql库小的user表,Ho ...

  7. MYSQL基础操作

    MYSQL基础操作 [TOC] 1.基本定义 1.1.关系型数据库系统 关系型数据库系统是建立在关系模型上的数据库系统 什么是关系模型呢? 1.数据结构可以规定,同类数据结构一致,就是一个二维的表格 ...

  8. CentOS中Mysql常用操作

    安装mysqlyum -y install mysql-server 修改mysql配置vi /etc/my.cnf 这里会有很多需要注意的配置项,后面会有专门的笔记暂时修改一下编码(添加在密码下方) ...

  9. MYSQL远程登录权限设置 ,可以让Navicat远程连接服务器的数据库

    Mysql默认关闭远程登录权限,如下操作允许用户在任意地点登录: 1. 进入mysql,GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY ...

随机推荐

  1. Cookies的实际存储位置

    检查下注册表中:  HKEY_CRURRENT_USER\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVESION\EXPLORER\USER SHELL FOLDERSCoo ...

  2. 网站地图怎么做?dedecms网站地图制作方法听语音

    网站地图怎么生成?下面分享织梦dedecms系统网站地图的生成方式,怎么制作网站地图,方法很简单.下面介绍一下网站地图优化方法及制作方法. 工具/原料 一个网站 方法/步骤 第一步 登录网站后台 第二 ...

  3. 数据库复习总结(20)-存储过程以及.net调用存储过程

    一.存储过程(注意区分将一段select语句进行封装叫做视图)(1)将一段t-sql脚本进行封装,以完成一个逻辑操作(2)创建存储过程:            create proc 名称      ...

  4. 在iOS App 中添加启动画面

    你可以认为你需要为启动画面编写代码,然而Apple 让你可以非常简单地在Xcode中完成.不需要编写代码,你仅需要在Xcode中进行一些配置. 1.什么是启动画面(Splash Screen)? 启动 ...

  5. linux如何安装java环境

    linux安装jdk7步骤: 1.首先使用命令查看linux系统版本号: lsb_release -a 11 2.下载对应的jdk版本,笔者使用的是jdk-7u79-linux-x64.tar.gz: ...

  6. 2017-06-20 (pwd ls cd)

    pwd pwd   显示当前所在的位置 pwd -P  如果是链接文件,显示链接文件所指的位置 ls ls 查询目录中的内容 ls  -a 显示所有的文件,包含隐藏的文件   -l 显示详细的信息   ...

  7. junit设计模式--适配器模式

    适配器(Adapter)模式 在软件系统中,由于环境的变化,常常需要将"一些现存的对象"放在新的环境中应用,但是新环境要求的接口是这些现存对象所不满足的.那么如何应对这种" ...

  8. jdbc参数

    JDBC连接池参数:    jdbc.initialSize=0       //初始化连接    jdbc.maxActive=30     //连接池的最大数据库连接数,设为0表示无限制    j ...

  9. MySQL5.6安装(RPM)笔记

    1. 检查MySQL是否安装,如果有安装,则移除(rpm –e 名称)[root@localhost ~]# rpm -qa | grep -i mysqlmysql-libs-xxxxxxxxxx. ...

  10. ios MVVM实践 刷新网络请求+tableView展示数据

    [实现效果] [目录结构相关] 此示例展示用的是MVVM结构形式,表述如下 M:数据Model的存储,可以用来对属性进行处理.(即胖model概念,上图中xx万人订阅这个处理方法写在Model内) V ...