忘记root密码万能修改MySql密码方法

如果本地忘记了root密码
,可以试试以下方法:

打开CMD首先停止mysql服务

net stop mysql

进入mysql安装目录下的bin文件夹,然后输入

mysqld-nt --skip-grant-tables

跳过密码检测

然后另外新打开一个cmd窗口

输入mysql 直接回车可以以root权限进入mysql

use mysql

update user set password=password("新密码") where user="root";

flush privileges;

如果无错误提示,密码
即可更改成功。

谢谢黑小子的方法。

Linux用户、用户组、文件权限学习笔记

 

linux的权限系统主要是由用户、用户组和权限组成。
用户就是一个个的登录并使用linux的用户。linux内部用UID表示。
用户组就是用户的分组。linux内部用GID表示。
权限分为读、写、执行三种权限。

 

linux的用户信息保存在/etc/passwd文件中,另外,/etc/shadow文件存放的是用户密码相关信息。

/etc/passwd文件格式:
用户名:密码:UID:GID:用户信息:HOME目录路径:用户shell
其中UID为0则是用户root,1~499为系统用户,500以上为普通用户

 

/etc/shadow保存用户密码信息,包括加密后的密码,密码过期时间,密码过期提示天数等。

 

用户组信息保存在/etc/group文件中.
格式如下:
用户组名:组密码:GID:组内帐号(多个帐号用逗号分隔)

 

用户登录后,/etc/passwd文件里的GID为用户的初始用户组。
用户的初始用户组这一事实不会再/etc/group中体现。

 

 

查看当前用户的用户组命令:
[root@local opt]#groups
root bin daemon sys adm disk wheel
输出的信息中,第一个用户组为当前用户的有效用户组(当前用户组)

 

 

切换有效用户组命令:
[root@local opt]#newgrp 用户组名
要离开新的有效用户组,则输入exit回车。

 

 

新建用户命令:
[root@local opt]#useradd 用户名 -g 初始用户组 -G 其他用户组(修改/etc/group) -c 用户说明 -u 指定UID

 

 

建完用户需要为用户设置密码:
[root@local opt]#passwd 用户名

用户要修改自己密码命令:

[root@local opt]#passwd

修改用户信息命令:

[root@local opt]#usermod 参数 用户名
参数:
 -c 说明
 -g 组名 初始用户组
-e 过期日期 格式:YYYY-MM-DD
 -G 组名 其他用户组
 -l 修改用户名
 -L 锁定账号(在/etc/shadow文件中用户对应密码密码串的前面加上两个叹号(!!))
 -U 解锁

删除用户命令:

[root@local opt]#userdel [-r] 用户名
其中,参数-r为删除用户的home目录。
其实,可能在系统其他地方也有该用户文件,要完整删除一个用户和其文件要先找到属于他的文件:
[root@local opt]#find / -user 用户名
然后删除,再运行userdel删除用户。

 

查看可用shell命令:
[root@local opt]#chsh -l 
修改自己的shell命令:
[root@local opt]#chsh -s

 

查看自己或某人UID/GID信息:
[root@local opt]#id [用户名]
返回信息中groups为有效用户组

 

新增用户组命令:
[root@local opt]#groupadd 用户组名

 

修改用户组名命令:
[root@local opt]#groupmod -n 名称

 

删除用户组命令:
[root@local opt]#groupdel 用户组名

设置用户组密码命令:

[root@local opt]#gpasswd 用户组名

 

如果gpasswd加上参数则有其他功能

 

设置用户组管理员命令:
[root@local opt]#gpasswd -A 用户名 用户组名

 

添加某帐号到组命令:
[root@local opt]#gpasswd -M 用户名 用户组名

 

从组中删除某帐号命令:
[root@local opt]#gpasswd -d 用户名 用户组名

 

passwd相关参数操作:
-l 锁用户
-u 解锁用户
-n 天数  密码不可改天数
-x 天数  密码过期天数
-w 天数  警告天数

 

  文件权限知识


先看个实例:
[root@local opt]#ls -al
ls -al 命令是列出目录的所有文件,包括隐藏文件。隐藏文件的文件名第一个字符为'.'
-rw-r--r--  1 root root    81 08-02 14:54 gtkrc-1.2-gnome2
-rw-------  1 root root   189 08-02 14:54 ICEauthority
-rw-------  1 root root    35 08-05 10:02 .lesshst
drwx------  3 root root  4096 08-02 14:54 .metacity
drwxr-xr-x  3 root root  4096 08-02 14:54 nautilus

 

列表的列定义如下:
[权限属性信息] [连接数] [拥有者] [拥有者所属用户组] [大小] [最后修改时间] [文件名]

 

权限属性列表为10个字符:
第一个字符表示文件类型,d为目录 -为普通文件 l为连接 b为可存储的接口设备 c为键盘鼠标等输入设备
2、3、4个字符表示所有者权限,5、6、7个字符表示所有者同组用户权限,8、9、10为其他用户权限
第二个字符表示所有者读权限,如果有权限则为r,没有权限则为-
第三个字符表示所有者写权限,如果有权限则为w,没有权限则为-
第四个字符表示所有者执行权限,如果有权限则为x,没有权限则为-
第五个字符表示所有者同组用户读权限,如果有权限则为r,没有权限则为-
第六个字符表示所有者同组用户写权限,如果有权限则为w,没有权限则为-
第七个字符表示所有者同组用户执行权限,如果有权限则为x,没有权限则为-
第八个字符表示其他非同组读权限,如果有权限则为r,没有权限则为-
第九个字符表示其他非同组写权限,如果有权限则为w,没有权限则为-
第十个字符表示其他非同组执行权限,如果有权限则为x,没有权限则为-

 

修改文件所属组命令:
[root@local opt]#chgrp [-R] 组名 文件名
其中-R为递归设置

 

修改文件的所有者和组命令:
[root@local opt]#chown [-R] 用户[:用户组] 文件名

 

修改文件访问权限命令:
[root@local opt]#chmod [-R] 0777 文件名

linux 里的mysql命令总结 - 学习linux+mysql必备

一、总结一下Linux下MySQL的一些命令:

1.Linux下启动mysql的命令:
mysqladmin start
/ect/init.d/mysql start (前面为mysql的安装路径)

2.Linux下重启mysql的命令:
mysqladmin restart
/ect/init.d/mysql restart (前面为mysql的安装路径)

3.Linux下关闭mysql的命令:
mysqladmin shutdown
/ect/init.d/mysql shutdown (前面为mysql的安装路径)

4.连接本机上的mysql:
进入目录mysql\bin,再键入命令mysql -uroot -p, 回车后提示输入密码。
退 出mysql命令:exit(回车)

5.修改mysql密码:
mysqladmin -u用户名 -p旧密码 password 新密码
或进入mysql命令行 SET PASSWORD FOR root=PASSWORD("root");

6.增加新用户。(注意:mysql环境中的命令后面都带一个分号作为命令结束符)
grant select on 数据库.* to 用户名@登录主机 identified by "密码"
如增加一个用户test密码为123,让他可以在任何主机上登录, 并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入mysql,然后键入以下命令:
grant select,insert,update,delete on *.* to " Identified by "123";

二、有关mysql数据库方面的操作
必须首先登录到mysql中,有关操作都是在mysql的提示符下进行,而且每个命令以分号结束

1、显示数据库列表。
show databases;
2、显示库中的数据表:
use mysql; //打开库
show tables;
3、显示数据表的结构:
describe 表名;
4、建库:
create database 库名;
5、建表:
use 库名;
create table 表名(字段设定列表);
6、删库和删表:
drop database 库名;
drop table 表名;
7、将表中记录清空:
delete from 表名;
8、 显示表中的记录:
select * from 表名;

9、编码的修改
如果要改变整个mysql的编码格式:
启动mysql的时候,mysqld_safe命令行加入
--default-character-set=gbk

如果要改变某个库的编码格式:在mysql提示符后输入命令
alter database db_name default character set gbk;

三、数据的导入导出

1、文本数据转到数据库中
文本数据应符合的格式:字段数据之间用tab键隔开,null值用来代替。例:
1 name duty 2006-11-23
数据传入命令 load data local infile "文件名" into table 表名;

2、导出数据库和表
mysqldump --opt news > news.sql(将数据库news中的所有表备份到news.sql文件,news.sql是一个文本文件,文件名任取。)

mysqldump --opt news author article > author.article.sql(将数据库news中的author表和article表备份到author.article.sql文件, author.article.sql是一个文本文件,文件名任取。)
mysqldump --databases db1 db2 > news.sql(将数据库dbl和db2备份到news.sql文件,news.sql是一个文本文件,文件名任取。)
mysqldump -h host -u user -p pass --databases dbname > file.dump
就是把host上的 以名字user,口令pass的数据库dbname导入到文件file.dump中
mysqldump --all-databases > all-databases.sql(将所有数据库备份到all-databases.sql文件,all-databases.sql是一个文本文件, 文件名任取。)

3、导入数据
mysql < all-databases.sql(导入数据库)
mysql>source news.sql;(在mysql命令下执行,可导入表)

一、连接MySQL
格式: mysql -h主机地址 -u用户名 -p用户密码

1、例1:连接到本机上的MYSQL。

首先在打开DOS窗口,然后进入目录 mysqlbin,再键入命令mysql -uroot -p,回车后提示你输密码,如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是: mysql>。

2、例2:连接到远程主机上的MYSQL。假设远程主机的IP为:110.110.110.110,用户名为root,密码为abcd123。则键 入以下命令:

mysql -h110.110.110.110 -uroot -pabcd123

(注:u与root可以不用加空格,其它也一样)

3、退出MYSQL命令: exit (回车)。

破译三阶魔方密码,轻松还原魔方

 

破译三阶魔方密码(转自《Geek》)

不用担心儿时被魔方侮辱的经历重现。因为,这次有MCG。我们将带领你一同破译最常见的三阶魔方密码,让你迅速成为魔方高手。

基本说明

魔方的6面()用F、B、L、R、U、D表示。

转动约定:如果为顺时针转动,则符号后无内容;若逆时针转动90度,则记为符号+“’”;如果转动180度,则记为符号
+“2”。

F即正面顺时针旋转90度(如D则为底面顺时针旋转90度,以此推)

F’即正面逆时针旋转90度(如D’则为底面逆时针旋转90度,以此推)

R2即右侧面旋转180度(如D2则为底面旋转180度,以此推)

简单批量生成不重复的虚拟充值卡号密码

  1. <?php

  2.  
  3. $numLen=16;
  4. $pwdLen=10;
  5. $c=100;//生成100组卡号密码
  6. $sNumArr=range(0,9);
  7. $sPwdArr=array_merge($sNumArr,range('A','Z'));
  8.  
  9. $cards=array();
  10. for($x=0;$x< $c;$x++){
  11. $tempNumStr=array();
  12. for($i=0;$i< $numLen;$i++){
  13. $tempNumStr[]=array_rand($sNumArr);
  14. }
  15. $tempPwdStr=array();
  16. for($i=0;$i< $pwdLen;$i++){
  17. $tempPwdStr[]=$sPwdArr[array_rand($sPwdArr)];
  18. }
  19. $cards[$x]['no']=implode('',$tempNumStr);
  20. $cards[$x]['pwd']=implode('',$tempPwdStr);
  21. }
  22. array_unique($cards);
  23. print_r($cards);
  24. ?>
标签: php, 密码