MYsql 数据库密码忘记(Linux)

在Linux 上面装上了 Mysql 数据库,但是发现密码忘了,悲催,解决方法跟Window系统下一样的, 不管是哪个操作系统处理的思路是相同的,就是首先要把mysql的权限去掉,这样即使忘了密码,不使用密码,照样可以进入,

但是window 和linux 在 屏蔽mysql权限方面稍有不同;这个方法适用于 忘记密码,或是刚开始安装mysql ,还没有密码,需要设置密码的情况;

网上查了一下使用:mysqladmin -u root -p password 123456可以修改

这是我执行后的错误:

‘Access denied; you need (at least one of) the SUPER privilege(s) for this operation‘

开始解决;

进入Linux 操作界面:
1.关闭mysql
# service mysqld stop
2.屏蔽权限

修改MySQL的登录设置 进入mysql 在linux底下的默认安装路径,找到 my.cnf文件:
# 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  (这是我加的)

下面是我的配置文件 其中只是多加了一句 话:skip-grant-tables

# Example MySQL config file for medium systems.
#
# This is for a system with little memory (32M - 64M) where MySQL plays
# an important part, or systems up to 128M where MySQL is used together with
# other programs (such as a web server)
#
# MySQL programs look for option files in a set of
# locations which depend on the deployment platform.
# You can copy this option file to one of those
# locations. For information about these locations, see:
# http://dev.mysql.com/doc/mysql/en/option-files.html
#
# In this file, you can use all long options that a program supports.
# If you want to know which options a program supports, run the program
# with the "--help" option.

# The following options will be passed to all MySQL clients
[client]
#password    = your_password
port        = 3306
socket        = /tmp/mysql.sock

# Here follows entries for some specific programs

# The MySQL server
[mysqld]
port        = 3306
socket        = /tmp/mysql.sock
skip-external-locking
log-error=/alidata/log/mysql/error.log
key_buffer_size = 16M
max_allowed_packet = 1M
table_open_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
skip-grant-tables
# Don‘t listen on a TCP/IP port at all. This can be a security enhancement,
# if all processes that need to connect to mysqld run on the same host.
# All interaction with mysqld must be made via Unix sockets or named pipes.
# Note that using this option without enabling named pipes on Windows
# (via the "enable-named-pipe" option) will render mysqld useless!
#
#skip-networking

# Replication Master Server (default)
# binary logging is required for replication
log-bin=mysql-bin

# binary logging format - mixed recommended
binlog_format=mixed

# required unique id between 1 and 2^32 - 1
# defaults to 1 if master-host is not set
# but will not function as a master if omitted
server-id    = 1

# Replication Slave (comment out master section to use this)
#
# To configure this host as a replication slave, you can choose between
# two methods :
#
# 1) Use the CHANGE MASTER TO command (fully described in our manual) -
#    the syntax is:
#
#    CHANGE MASTER TO MASTER_HOST=<host>, MASTER_PORT=<port>,
#    MASTER_USER=<user>, MASTER_PASSWORD=<password> ;
#
#    where you replace <host>, <user>, <password> by quoted strings and
#    <port> by the master‘s port number (3306 by default).
#
#    Example:
#
#    CHANGE MASTER TO MASTER_HOST=‘125.564.12.1‘, MASTER_PORT=3306,
#    MASTER_USER=‘joe‘, MASTER_PASSWORD=‘secret‘;
#
# OR
#
# 2) Set the variables below. However, in case you choose this method, then
#    start replication for the first time (even unsuccessfully, for example
#    if you mistyped the password in master-password and the slave fails to
#    connect), the slave will create a master.info file, and any later
#    change in this file to the variables‘ values below will be ignored and
#    overridden by the content of the master.info file, unless you shutdown
#    the slave server, delete master.info and restart the slaver server.
#    For that reason, you may want to leave the lines below untouched
#    (commented) and instead use CHANGE MASTER TO (see above)
#
# required unique id between 2 and 2^32 - 1
# (and different from the master)
# defaults to 2 if master-host is set
# but will not function as a slave if omitted
#server-id       = 2
#
# The replication master for this slave - required
#master-host     =   <hostname>
#
# The username the slave will use for authentication when connecting
# to the master - required
#master-user     =   <username>
#
# The password the slave will authenticate with when connecting to
# the master - required
#master-password =   <password>
#
# The port the master is listening on.
# optional - defaults to 3306
#master-port     =  <port>
#
# binary logging - not required for slaves, but recommended
#log-bin=mysql-bin

# Uncomment the following if you are using InnoDB tables
#innodb_data_home_dir = /usr/local/mysql/data
#innodb_data_file_path = ibdata1:10M:autoextend
#innodb_log_group_home_dir = /usr/local/mysql/data
# You can set .._buffer_pool_size up to 50 - 80 %
# of RAM but beware of setting memory usage too high
#innodb_buffer_pool_size = 16M
#innodb_additional_mem_pool_size = 2M
# Set .._log_file_size to 25 % of buffer pool size
#innodb_log_file_size = 5M
#innodb_log_buffer_size = 8M
#innodb_flush_log_at_trx_commit = 1
#innodb_lock_wait_timeout = 50

[mysqldump]
quick
max_allowed_packet = 16M

[mysql]
no-auto-rehash
# Remove the next comment character if you are not familiar with SQL
#safe-updates

[myisamchk]
key_buffer_size = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M

[mysqlhotcopy]
interactive-timeout

my.cnf

(3)打开mysql服务

# service mysqld start;

(4)

[[email protected] ~]# mysql 
mysql> use mysql; 
mysql> update user set password=password(‘new_password‘) where user=‘root‘; 
mysql> flush privileges; 
mysql >exit;

这样就把密码修改了,

(5) 改完了密码之后,需要恢复权限:把之前对/etc/my.cnf的  skip-grant-tables  删掉

然后执行  # service mysqld restart;

(6) 然后mysql -u root -p

Enter Password :你的新密码;

就可以了;

时间: 2024-10-10 15:53:57

MYsql 数据库密码忘记(Linux)的相关文章

忘记mysql数据库密码怎么办?

一.破解mysql数据库密码步骤 1.修改mysql配置文件/etc/my.cnf  [mysqld] port        = 3306 socket      = /tmp/mysql.sock skip-external-locking key_buffer_size = 256M max_allowed_packet = 1M table_open_cache = 256 sort_buffer_size = 1M read_buffer_size = 1M read_rnd_buff

Centos7 之 MariaDB(Mysql) root密码忘记的解决办法

MariaDB(Mysql) root密码忘记的解决办法 1.首先先关闭mariadb数据库的服务 # 关闭mariadb服务命令(mysql的话命令就是将mariadb换成mysql) [[email protected] ~]# systemctl stop mariadb # 通过进行查询服务或者通过端口查询服务还是否存在 [[email protected] ~]# ps aux|grep mariadb root       6852  0.0  0.0 112704   964 pt

C连接MySQL数据库开发之Linux环境完整示例演示(增、删、改、查)

一.开发环境 ReadHat6.3 32位.mysql5.6.15.gcc4.4.6 二.编译 gcc -I/usr/include/mysql -L/usr/lib -lmysqlclient main.c -o main.out -I:指定mysql头文件所在目录(默认去/usr/include目录下寻找所用到的头文件) -L:指定mysql动态库文件所在目录(默认从/usr/lib目录查找) -l:链接libmysqlclient.so动态库 -o:生成的可执行文件名 三.完整示例 //

Mysql 数据库密码管理

1.密码为空时设置密码为 123456: mysqladmin -u root password '123456' 2.知道现有密码,需要修改密码为 123123: 2.1.第一种设置方法 mysql -u root -p123456 mysql> use mysql; mysql> update user set password=password('123123') where user="root"; mysql> flush  privileges; 2.2.

mysql root密码忘记重置

1.修改/etc/my.cnf文件 找到mysqld选项,增加子项skip-grant-tables 2.重新启动mysql服务 service mysqld restart 3.进入mysql 在shell中执行mysql -u root 4.设置root新密码 update mysql.user set password=password('newpassword') where user='root'; flush privileges; 5.删除步骤1中进行的操作. 6.再次执行步骤2.

mysql登录密码忘记的解决办法

mysql登录密码忘记,其实解决办法很简单,只需要在mysql的主配置文件my.cnf里添加一行"跳过授权表"的参数选择即可! 在my.cnf中添加下面一行:[[email protected] ~]# vim /etc/my.cnf........skip-grant-tables                       //跳过授权表 然后重启mysql服务,即可无密码登录[[email protected] ~]# /etc/init.d/mysqld restart 登录后

用phpMyAdmin修改mysql数据库密码

1初始数据库密码为空.用phpMyAdmin修改mysql数据库密码2第一步,点击phpMyAdmin里的用户选项.用phpMyAdmin修改mysql数据库密码3选择root localhost用户名,点击编辑权限.用phpMyAdmin修改mysql数据库密码4此时会出来修改权限的页面,里面可以设置的选项还是比较多的,暂时不管其他的,往下拖,会有一个修改密码的区域.用phpMyAdmin修改mysql数据库密码5输入两次新的密码,下面有个生成按钮,这是根据你当前设置的密码加密之后生成新的密码

破解本地MySQL数据库密码

破解本地MySQL数据库密码: 1.用系统管理员登陆系统. 2.停止MySQL的服务. Windows:运行net stop mysql关闭数据库 3.进入命令窗口,然后进入 MySQL的安装目录,比如我的安装目录是c:\mysql,进入C:\mysql\bin 4.跳过权限检查启动MySQL, c:\mysql\bin>mysqld-nt ––skip-grant-tables 或则:c:\mysql\bin>mysqld ––skip-grant-tables mysqld.exe是微软W

mysql数据库密码破解

7.1和7.1.1由于越狱不成熟,半完美越狱后电脑上无法访问系统越狱目录,如var usr 等等. 今天有些意外地发现,可以在电脑上使用手机的越狱目录我手机 i4 7.1.1 联通 半完美越狱,没装Afc2Add,也没装Appsync 附上  --->我的半完美越狱过程 好了,下面直接正题 一.前提,必须安装ifile! 打开ifile,并转到 /var/mobile/media 目录下,然后点击右上角的 [ 编辑 ]如图: 二.点左下角的 + 号创建,如图: 三.点 [ 类型],选择[符号链接