想知道linux下怎么修改密码吗?下面由我为大家整理了linux mysql修改密码命令,希望大家喜欢!
linux mysql修改密码命令
1.修改root密码
linux mysql修改密码命令方法1:使用mysqladmin命令
--适用于记得root旧密码,修改root密码
语法:
mysqladmin -u用户名 -p旧密码 password 新密码
例如:
# mysqladmin -u root -proot password mysql
--注意:如当旧密码输入错误时会报如下错误
# mysqladmin -u root -proot1 password mysql
mysqladmin: connect to server at 'localhost' failed
error: 'Access denied for user 'root'@'localhost' (using password: YES)'
linux mysql修改密码命令方法2:直接更新user表password字段
--适用于忘记root密码,而对root密码进行重置
Step 1: 修改MySQL的登录设置
# vi /etc/my.cnf
--windows系统是my.ini文件
--在[mysqld]的段中加上一句:skip-grant-tables,如没有[mysqld]字段,可手动添加上
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
skip-name-resolve
skip-grant-tables
Step 2: 重新启动mysql
[root@gc ~]# service mysql restart
Shutting down MySQL..[确定]
Starting MySQL...[确定]
Step 3: 登录并修改MySQL的root密码
--此时直接用mysql即可无需密码即可进入数据库了
[root@gc ~]# mysql
Welcome to the MySQL monitor. Commands end with or \g.
Your MySQL connection id is 2
Server version: 5.5.24 MySQL Community Server (GPL)
Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help' or '\h' for help. Type '\c' to clear the current input statement.
mysql>use mysql
Database changed
mysql>update user set password=password('new_password') where user='root'
Query OK, 5 rows affected (0.00 sec)
Rows matched: 5 Changed: 5 Warnings: 0
mysql>flush privileges
Query OK, 0 rows affected (0.00 sec)
--注意:如果没做step1,直接用mysql登录时会报如下错误
[root@gc ~]# mysql
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
Step 4: 将MySQL的登录设置修改回来
再删除/etc/my.cnf文件中的skip-grant-tables
Step 5: 重新启动mysql
[root@gc ~]# service mysql restart
Shutting down MySQL..[确定]
Starting MySQL...[确定]
2.修改mysql其它用户密码
同样,普通用户也可以用上面的方法
--使用mysqladmin命令
[root@njdyw ~]# mysqladmin -u user1 -ppass1 password pass2
--直接修改数据库表
[root@njdyw ~]# mysql -u user1 -ppass1 –Dmysql
mysql>update user set password=password('pass2') where user='user1'
mysql>flush privileges
方法如下:
1、打开mysql.exe和mysqld.exe所在的文件夹,复制路径地址
2、打开cmd命令提示符,进入上一步mysql.exe所在的文件夹。
3、输入命令 mysqld --skip-grant-tables 回车,此时就跳过了mysql的用户验证。注意输入此命令之后命令行就无法 *** 作了,此时可以再打开一个新的命令行。注意:在输入此命令之前先在任务管理器中结束mysqld.exe进程,确保mysql服务器端已结束运行。
4、然后直接输入mysql,不需要带任何登录参数直接回车就可以登陆上数据库。
5、输入show databases 可以看到所有数据库说明成功登陆。
6、其中mysql库就是保存用户名的地方。输入 use mysql 选择mysql数据库。
7、show tables查看所有表,会发现有个user表,这里存放的就是用户名,密码,权限等等账户信息。
8、输入select user,host,password from user 来查看账户信息。
9、更改root密码,输入update user set password=password('123456') where user='root' and host='localhost'
10、再次查看账户信息,select user,host,password from user 可以看到密码已被修改。
11、退出命令行,重启mysql数据库,用新密码尝试登录。
12、测试不带密码登录mysql,发现还是能够登陆上,但显示数据库时只能看到两个数据库了,说明重启之后跳过密码验证已经被取消了。
13、重启数据库之后之所以不带密码任然能够登录是因为数据库里存在设无须口令的账户。
扩展资料:
MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理。
MySQL是开放源代码的,因此任何人都可以在General Public License的许可下下载并根据个性化的需要对其进行修改。
MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。
1:使用SHOW语句找出在服务器上当前存在的数据库:
mysql>SHOW DATABASES
2:创建一个数据库MYSQLDATA
mysql>CREATE DATABASE MYSQLDATA
3:选择你所创建的数据库
mysql>USE MYSQLDATA(按回车键出现Database changed 时说明 *** 作成功!)
4:查看现在的数据库中存在什么表
mysql>SHOW TABLES
5:创建一个数据库表
mysql>CREATE TABLE MYTABLE (name VARCHAR(20), sex CHAR(1))
6:显示表的结构:
mysql>DESCRIBE MYTABLE
7:往表中加入记录
mysql>insert into MYTABLE values (”hyq”,”M”)
8:用文本方式将数据装入数据库表中(例如D:/mysql.txt)
mysql>LOAD DATA LOCAL INFILE “D:/mysql.txt” INTO TABLE MYTABLE
9:导入.sql文件命令(例如D:/mysql.sql)
mysql>use database
mysql>source d:/mysql.sql
10:删除表
mysql>drop TABLE MYTABLE
11:清空表
mysql>delete from MYTABLE
12:更新表中数据
mysql>update MYTABLE set sex=”f” where name=’hyq’
参考资料来源:百度百科:MySQL数据库
修改用户名mysql>use mysql 选择数据库
Database changed
mysql>update user set user="dns" where user="root" 将用户名为root的改为dns
修改密码
使用mysqladmin,这是前面声明的一个特例。
mysqladmin -u root -p password mypasswd
输入这个命令后,需要输入root的原密码,然后root的密码将改为mypasswd。
把命令里的root改为你的用户名,你就可以改你自己的密码了。
当然如果你的mysqladmin连接不上mysql server,或者你没有办法执行mysqladmin,
那么这种方法就是无效的。
而且mysqladmin无法把密码清空。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)