手机自动化测试IDE —– Airtest的安装和IDE控件详解

大家好,我是IT共享者,人称皮皮。这篇文章主要给大家分享手机自动化测试IDE —– Airtest的安装和IDE控件详解相关知识,一起来看看吧。

前言

前面小编带大家讲解了一些用来做自动化的模块,但是如果是在手机上做自动化了,我们还能搞定吗?也许有人觉得抓手机的数据包都费劲,还搞什么自动化,而且肯定不简单。但我要告诉你的是,这一切都被一个叫Airtest的自动化测试软件给搞定了,你只需要把它一直运行着,你的手机上的所有操作,就都交给它了,直接就是点点点。

一、安装IDE

这里需要下载我们的Airtest,下载地址:

https://u062.com/file/7715018-451404671

下载好后我们需要安装它,然后第一次打开需要注册一个账号,必须是网易的账号,因为这个IDE就是网易开发的,所以需要登录网易的邮箱号才可以使用,安装成功后,如图所示:

二、IDE控件详解

1.Airtest辅助窗口

这里主要陈列着Airtest的所有功能函数以及Poco的功能函数,Poco是比Airtest识别率更友好的控件。如图:

touch:触屏操作


wait:等待操作


swipe:滑动操作


exists:检查屏幕上是否存在指定目标


test:在目标程序上输入文本


keyevent:按键操作


snapshot:截图操作


sleep:睡眠定时


assert_exists:存在断言的目标


assert_not_exists:不存在断言的目标


assert_equal:断言两个值是否相等


assert_not_equal:断言两个值是否不相等

2.Poco辅助窗口

Poco主要用来做游戏辅助测试,比如自动点击的外挂等等。

这里不再详细描述,因为我们用的最多的就是Airtest。

3.脚本编辑窗口

这个窗口是用来构建并运行我们的程序,同时还支持自动生成代码。

4.Log查看窗

这个窗口是将我们每一步操作生成的日志打印在这个窗口供我们查看的,可以通过查看日志了解到程序报错的原因以及当前操作所产生的结果。

5.移动设备连接

我们可以看到IDE上显示有移动设备连接,Serial NO.代表搜索到的设备名,State代表设备状态,有三种:offine(设备未连接或者无响应),Device(设备已连接),No Device(没有设备)。刷新ADB自然是重置当前设备列表,重启ADB自然是断开所有连接并重置列表。

6.远程设备连接

这里可以连接到本地模拟器上的设备,也可以连接到远程设备,只要你有可供连接的设备。

7.Windows窗口连接

用来选择当前系统桌面应用程序的并把它们的当前行为记录下来,也可用来做自动化。

8.连接IOS设备

这个就不说,给苹果手机准备的。

9.安卓助手

这个功能挺不错的,可以很方便查看设备的方法,以及可以进行一些简单的操作,如下所示:

三、总结

这篇文章主要给大家介绍了自动化测试IDE —– Airtest的安装和IDE控件基础知识,下一篇文章小编将带大家来实际应用Airtest连接手机,给大家分享一些好玩的。

干货|Sqlite数据库知识必知必会(下篇)

大家好,我是IT共享者,人称皮皮。

前面几天给大家分享了MySQL数据库知识,没来得及看的小伙伴可以前往:Mysql查询语句进阶知识集锦,一篇文章教会你进行Mysql数据库和数据表的基本操作,关于数据库的安装可以参考:手把手教你进行Mysql5.x版本的安装及解决安装过程中的bug。

上篇文章主要给大家介绍了Sqlite数据库的安装、图形化管理系统、基本数据类型、基本关键字和数据库的相关操作,干货|Sqlite数据库知识必知必会(上篇),今天皮皮紧接上篇文章,继续给大家分享数据库知识,一起来看看吧。

前言

前面我们学习了很多数据库,虽然它们功能非常丰富,但是占用空间比较大,使得我们的系统负荷变大,这对于我们新手小白来说不是一个理想的选择,于是乎,Sqlite闪亮登场,它受人喜爱的真正原因正是因为它足够小,无需安装和管理配置,简单容易上手,支持数据库的大小也有2TB,足够我们个人开发爱好者使用了。

一、数据表相关操作

1).创建数据表

CREATE TABLE student (
ID INTEGER DEFAULT '1406061' PRIMARY KEY AUTOINCREMENT NOT NULL,
NAME NVARCHAR(100)  UNIQUE NOT NULL,
score INTEGER  NOT NULL,
time TIMESTAMP  NOT NULL
);

我们可以使用SqliteAdmin快速生成表,如下:

干货|Sqlite数据库知识必知必会(下篇)

干货|Sqlite数据库知识必知必会(下篇)

这样我们的表就建立成功了。这里小编在软件中用的是DEMO这个数据文件,而在命令窗口中用的是TEST这个数据库文件,因为一个数据库文件不允许在两个位置打开的缘故。

2).删除表

DROP TABLE people;

3).显示表名

.tables
干货|Sqlite数据库知识必知必会(下篇)

4).数据表的增删改查

1)).增加

这里我们可以给刚创建的表添加一个数据,如下:

insert into student(ID,NAME,score,time) values(1406063,'任性的90后boy',90,'2020-07-06 12:23:32');
干货|Sqlite数据库知识必知必会(下篇)

这里我插入了三行数据,其中有一行报错是因为我使用了相同的ID号,而我的数据库的ID号是不允许重复的,故而会报错,改成其它的就好了,如果你把ID设为自增的话,就不需要你去写了,这里我用到了自增,所以大家不必写Sqlite会自动填充进去的。这里也可以省掉字段名,直接写值,如下:

干货|Sqlite数据库知识必知必会(下篇)

我们还可以给表添加新列,如下;

alter table people add  column aa char(10);#添加列并且列名为aa

注:Sqlite3并不支持带有UNIQUE约束的列

2)).删除

delete from people;#删除表数据
delete from people where score<20#删除people数据表score数值小于20的记录

3)).修改

其实就是更新操作,如下;

update people set score=100 where  age=46;#当age=46时score设置为100

4)).查找

查找不管是在哪个数据库中方法都是相当多的,因为查询操作是最常见也是最频繁的,下面我们就来详细说说:

1))).查询所有的结果

select * from student;
干货|Sqlite数据库知识必知必会(下篇)

我们可以看到虽然结果打印出了,但是并不是那么美观,我们将它的打印格式化一下,如下;

干货|Sqlite数据库知识必知必会(下篇)

这下就完美多了。虽然这种方法很不错,但是如果数据列很多的话就无法完全显示了,这个时候我们就需要设置列的宽度,如下:

.width 10 20 15

2))).查询指定结果

select NAME,score from student; #打印出NAME和score列的结果
select * from people where score<20 and age<40;#当score小于20并且age小于40的时候
select *from people where score between 10 and 30;#当score为10~30之间时
select *from people where NAME LIKE '放大%';#当name的开始处含有放大
select *from people where NAME glob '放大*';#与上同
select *from where score not in(12,23);#当score不属于12~23

3))).查找排序

select * from people order by score desc; #对score降序排序

4))).查找指定数量的数据

select * from people  limit 3 offset 2#偏移2个单位然后输出三行数据,其实就是输出后三行数据

5))).查找重复数据并消除

select distinct * from people where score>10;#当score大于10的时候消除重复数据

6))).查找数据并进行分组

select NAME ,max(age) from people where score>10 group by age#返回score大于10的时候age的最大值

7))).查找数据进行分组并过滤分组

select NAME ,max(age) from people where score>10 group by age having count(NAME)>1;#名称计数大于1

5).表的重命名

alter table people rename to man;#将表名people改为man
干货|Sqlite数据库知识必知必会(下篇)

6).数据表的连接

这里的连接分为内外交叉三种连接,使用好了可以极大提高我们的工作效率。这里我们再次创建一张表,如下:

干货|Sqlite数据库知识必知必会(下篇)

1)).交叉连接

select * from people cross join woman;
干货|Sqlite数据库知识必知必会(下篇)

2)).内连接

select * from people inner join woman;

3)).外连接

select * from people outer join woman;

注:Sqlite3只支持左外连接。

7).表的复制

create table man as select * from people where 1=0;#复制表结构
create table woman as select * from people;#复制表结构和数据

8).临时表

有时候我们不需要存储所有表的数据,这个时候临时表就很有使用的必要了。如下:

#创建一个临时表
create  temporary table temp_table(
    id int primary key,
    name varchar(50) unique not null,
    age int not null
);


#查看临时表
temp.temp_table


#删除临时表
drop table temp.temp_table;

5.索引操作

1).创建索引

create index user on people(score);#在people表的score字段上设置索引
create unique name on people(NAME);#在people表的score字段上设置唯一索引
create index pa on people(score,age)#在people表的score和age字段上设置索引

2).查看索引

SELECT * FROM sqlite_master WHERE type = 'index';
干货|Sqlite数据库知识必知必会(下篇)

这里我们之前仅仅只是创建了一个索引,那就是”user“,为何会有两个索引了,而且最上面的索引好像跟我们并没有什么关系,也不像是自己创建的,其实,这个就是隐式索引,这个隐式索引在我们创建表的时候就连带着一起创建了的,只是为了让查询更加快速而已,影响不大。

3).使用索引

这里涉及到两个关键字请配套使用,表示索引来自于哪里的意思。

select * from people indexed by user where score>10;

4).删除索引

drop index user;

注:数据量较小不应使用索引,以免给系统增压。

6.视图操作

1).创建视图

create view name as select NAME from people;#创建NAME字段的视图

2).使用视图

select *from name;
干货|Sqlite数据库知识必知必会(下篇)

这样就可以直接输出视图字段的所有值了。

3).删除视图

drop view name;

7.触发器

触发器就是使得多个表的交互增强,互相调用,满足条件就调用哪个表,语法格式如下:

create trigger 触发器 after(before) insert(delete update)
on1
begin
insert into2(表2字段,表2字段,n) VALUES(表1值, 表1值,,,,n);
END;

1).创建触发器

#给people表创建一个触发器
create trigger cf
after insert on people
begin
insert into woman(w_ID,NAME,SCORE,date) values(new.ID,'向前插入',100,datetime('now'));
end;

2).查看触发器

select * from sqlite_master where type = 'trigger'AND tbl_name='people';#查看people表的触发器

3).删除触发器

drop trigger cf;

8.事务

有了事务可以让我们的Sqlite语句工作的更加有条不紊,一般大致分为事务开始 提交 回滚 结束,下面来看看:

begin;#开始
insert into people('gf',65,datetime('now'));
rollback; #回滚就是撤销
COMMIT;提交保存数据
end;#结束

这里的数据没有插入到“people”表中哦,是不是超级简单了?

二、总结

这篇文章主要介绍了Sqlite数据库的数据表、索引、视图、触发器和事务操作知识,干货满满。

皮皮自从学过Sqlite之后,就果断卸载了Mysql和Mongo了,主要是目前还用不着Mysql数据库和Mongo那么强大的数据,够用就好。

我是皮皮,如果觉得文章不错,记得三连噢,大家有问题也可以点击下方的图片,加我好友,交个朋友也好呀~

盘点4大下载神器,教你分分钟搞定文件下载

大家好,我是IT共享者,人称皮皮。

前几天给大家分享了一篇关于百度网盘的下载神器文章,安利一款神奇——教你轻松下载百度网盘超大文件,有读者反馈这个下载神奇下载小文件得心应手,但是下载大文件还是有些小吃力的,于是乎,皮皮给大家继续找了几个插件,一起跟着皮皮来盘点一下吧~

一、前言

平时我们在访问一些国外网站的时候难免会出现访问延迟甚至是下载到一半就无法下载的尴尬,比如我用360浏览器下载docker,如图:

看到这感人的速度,不禁让我流下了悔恨的泪水,如果当初我能知道几个下载神器中的一种,我也不会那么焦急地等待着。好在现在小编接触的软件比以前的多了,所以现在下载很多工具也就效率高了不少,下面小编就把自己曾经用过的觉得非常棒棒哒的下载工具分享给大家吧,记得点赞关注加收藏哦。

二、IDM

全称Internet Download Manager,是一个非常强大的软件,官方说可将下载速度提升至最多五倍,原先不信,自从用过之后我信了,而且觉得有过之而无不及。IDM不仅下载速度快而且支持断点续传,而且还支持代理服务器,ftp和http协议,防火墙,重定向,cookie,授权,音频和视频内容处理。我们下载后只需按照要求来安装它即可,IDM支持指定位置安装,下面我们来看看它长啥样吧,如图:

下面我们来使用它下载docker看看效果如何,如图:

我们从上面使用360浏览器下载的速度和这里使用IDM的速度一对比,差距可以说是再明显不过了,这也可以说明IDM的下载速度不是一般的快。不过这个软件有个致命伤,那就是有使用的时间限制,如果你用超过15天的话,你就会被它颁奖,授予你一个需要序列号才能使用的奖状,如图:

此时若是遇到这种情况莫要惊慌,小编已经给大家在网上找到了一个破解版的,也是相当好用,地址:

https://u062.com/f/7715018-484413622-ddb3ad(访问密码:123321)

下载下来后直接解压点击绿色安装然后点击IDM.exe就可以直接用了,如图:

这样就再也不用担心下载付费的问题了。另外,IDM也支持指定站点抓取,什么意思呢?就是它可以将目标网址中的一些图片视频以及其它文件抓取下来,你想抓取什么类型的文件都可以,如图:

可以说功能也是有够强大了。

三、XDM

全称Xtreme Download Manager,同样是一款牛逼的下载工具,具有和IDM 相同的功能,它可以保存和转换来自YouTube,Vimeo,Dailymotion,Google Video和成千上万个其它网站的流式视频并支持断点续传,支持HTTP,HTTPS,FTP,DASH,HLS,HDS协议,防火墙,代理服务器,PAC脚本,文件重定向,Cookie,授权,下载队列,调度程序等,并且它内置了视频转换器。说得这么牛逼我们来下载个试试看,地址:

https://u062.com/f/7715018-484413629-55a3ab(访问密码:6511)

这里小编分享的是一个msi的安装包,点击后无需安装直接就能安装好,第一次启动会显示英文界面,如图:

这里下面提示我们软件有更新,我们不用管它,下面我们把这个英文界面切换到中文界面,如图:

这样就可以直接汉化成功了,然后我们来添加一个下载任务,如图:

从这个速度可以看到,感觉比IDM还要快,简直就是视频下载必杀器一般的存在啊。

四、PDM

全称Persepolis Download Manager,也是一款十分强大的下载工具,这里小编提供有32位和64位两个版本,下载地址:

https://u062.com/f/7715018-484413736-d1c621(访问密码:6511)

PDM是一款基于aria2的图形化工具,它的速度也很快,并且资源占用少,支持 HTTP / FTP / BT / Magnet 磁力链接等类型的文件下载;并且跨平台支持 Win、Mac、Linux,甚至在树莓派、NAS、路由器等设备上都能安装它。唯一的遗憾就是不支持HTTPS。PDM打开时为英文界面,不过我们可以把它改为中文界面,如图:

下面我们用它来下载下docker试试,如图:

可以看到,下载速度和上面的工具比起来要更快一些。

五、XDown

一款专业的文件下载与分享工具,支持浏览器(Chrome/FireFox/Edge )下载,torrent下载文件与做种,BitTorrent 内置tracker list设置,FTP/HTTP/HTTPS/HTTP2协议下载,断点续传,多IP轮询节点下载,磁力链接,全局限速,也是相当牛逼的一个工具,地址:

https://u062.com/f/7715018-484416754-72bcab(访问密码:6511)

下面来看下它是如何下载的吧,如下:

我们可以看到,速度比较慢,不过比360浏览器还是稍微快一点,可以说是这几款工具中表现最差的了,不过它也有它的过人之处,就是用它来下载种子文件还是很方便的,这点是其它几个工具比不了的。

六、总结

以上就是小编经常使用的几款下载工具了,不知道你用过哪几款呢?赶快都来试试吧。

安利一款神奇——教你轻松下载百度网盘超大文件

前言

玩过百度网盘的都应该清楚它的强大,小编就是靠着百度网盘那强大的功能以及变态的存储空间才获得许多具有纪念价值的东西,比如某些Hacker资料,你懂的。

但是小编一直以来都有一个心结未解开,那就是为毛每次使用百度网盘下载文件的时候就非得下载百度网盘客户端才可以了,估计先不说浪费时间和占用电脑资源,至少小编也是不乐意这样做的,毕竟小编电脑可是只有60个G的存储空间了。

那么,我们该怎么样处理这个问题呢?简而言之就是如何在不下载客户端的情况下就可以下载这个大型的文件了,一起往下看看。

一、坑爹的下载制度

先来回顾下这个坑爹的画面:

看到这里小编尴尬癌都犯了,本想下载个黑客工具玩玩,过过瘾,奈何是这个样子,正巧不巧的自己的电脑又出了点意外,无法安装百度云客户端,目前还无法找出根本原因;但是小编是那么轻易认输的人吗?当然不是,于是乎,小编便找到了这么个神器,浏览器的一个脚本—-一般圈内人都叫它们油猴。

二、油猴脚本

油猴(Tampermonkey),这哥们我相信只要是玩过Google浏览器的同志都不会太陌生,它有着丰富的脚本资源,因而可以满足我们平时的网络需求,但是请注意,油猴脚本只能作用在Chromeium内核的浏览器上哦,小编所使用的360浏览器就是其中之一,其它的像什么QQ浏览器,UC浏览器等都是,随意选择一种即可;IE浏览器不是哦。

三、安装脚本

这里我们以360浏览器为主进行讲解,首先需要进入扩展管理界面,要想进入就得先点击管理图标,如下:

就是这个田子型的图标,点击它即可进入,然后我们点击加号按钮就可以进入扩展管理界面,如下:

这里我们在红色箭头处输入:‘tampermonkey’“,然后点击安装即可。安装成功是这个样子的,如图:

四、选择脚本库

虽然我们已经安装了油猴脚本,但是并不表示现在就可以随心所欲下载资源,进行各种骚操作了,我们还需要下载另一个脚本资源。不过在下载脚本资源之前,我们需要在某个库中查找,因为这些脚本资源目前都集中在库中,目前来说最出名的就是”GreasyFork “和”OpenUserJS “。小编选择的是”GreasyFork “,不因为别的,只是觉得这个网站的布局风格我很喜欢,于是果断选择了它,如图:

五、安装附加脚本

既然我们已经找到最合适的库了,那么接下来就是安装附加的脚本了,这里我们需要下载一个脚本,名为”网盘助手“,选择最新版本的网盘助手,如图:

点击进去,然后进行下载,如图:

这里我们可以在油猴的界面去查看当前下载的脚本的状态,如图:

可以看到,这里小编下载了两个脚本。

六、下载文件它就是解除

接下来就是最重要的时刻,做了那么多还不就是为下载文件做铺垫吗?那么我们该怎么做了?首先小编要说明的一点就是,你必须先把这个要下载的文件保存到百度网盘中才可以 ,那么废话不多说,保存我想大家都会,那就看网盘里有啥资源吧,我们随便选择一个资源,如图:

可以看到,选择了之后就会出现一些其它的选项,我们选择生成链接,然后会出现一个链接,如图:

我们点击这个链接,如图:

这样就弹出了下载链接了,我们选择好下载路径后直接点击下载,如图:

静静等待下载,一切大功告成。

七、总结

其实,像这样的神器在油猴中还有许多,这只是其中的一个而已,油猴上有很多优秀的脚本,好用到哭。

安装docker时,遇到Loaded plugins…怎么办

前言

Hey,大家好,我是码农,星期八,我们在安装Docker时,通常下面三条命令就能安装成功。

# 下载Docker依赖
yum -y install yun-utils device-mapper-persistent-data lvm2
# 设置一个下载Docker镜像源
yum -y install yum-utils
# 配置下载源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# 安装Docker
yum makecache fast
yum -y install docker-ce

但是通常情况下,我们在执行这条命令时,会报报一个错!!!

yum -y install yum-utils

报错信息

Loaded plugins: fastestmirror, langpacks
Loading mirror speeds from cached hostfile
No package yum-util available.
Error: Nothing to do

图片

这个该怎么办呢???

解决办法

出现这个错误,通常是第一次安装Docker才会出现。

报错信息翻译过来如下

加载插件:fastestmirror, langpacks
从缓存的主机文件加载镜像速度
没有包yum-util可用。
错误:啥都没做

大概可以了解,应该是加载插件的问题。

步骤

1、禁用fastestmirror插件

编辑fastestmirror.conf文件

vim /etc/yum/pluginconf.d/fastestmirror.conf

将enabled=1改为enabled=0,保存

2、修改yum的配置文件,不使用插件。

编辑yum.conf文件

vim /etc/yum.conf

将plugins=1改为plugins=0

如果还不行

如果通过上述两步,可能是缺少epel

安装epel

yum install epel-release

总结

其实遇到这个问题,说大也不大,但是就是碰到烦人,所以就记录一下。

操作使用的是vim,不会的记得学一下哈。

如果在操作过程中有任何问题,记得下面留言,我们看到会第一时间解决问题。

越努力,越幸运。

我是码农星期八,如果觉得还不错,记得动手点赞一下哈。感谢你的观看。

看完本文有收获?请转发分享给更多的人

IT共享之家

入群请在微信后台回复【入群】

——————- End ——————-

有了这个神器,快速告别垃圾短信邮件

前言

在日常生活中,我们时常会接收到一些垃圾短信和邮件,造成这种原因就是因为我们使用自己的手机号码在App上 注册了账号,导致手机号泄露,成为了别人发财的工具。

一、如何避免接收垃圾短信

众所周知,针对短信和邮箱都有相应的屏蔽号码或者是邮箱号的设置,但是并不是很智能。因为我们永远不知道下一秒钟究竟会是哪个大佬来光顾我们。一个一个去设置显得太麻烦,这里给大家介绍两个平台,超级好用。既不用担心泄露手机号码,也不会再接收到垃圾短信和邮件了。

Top 1.云短信

神器地址:

https://www.materialtools.com/?page=1

它可以代替你的手机号进行注册,并且也会和接收到验证码,你只需要把上面能用的手机号输入到你想注册的app里面,然后发送验证就可以了。

不过,它有一个缺陷就是我们用的手机号接收的验证码它会显示在这上面,基本所有用这个神器的人都能看到,就给人一种毫无隐私可言的感觉。不过为了能不接收垃圾短信,也无妨,毕竟问题不大。

可以看到这是最近一段时间申请注册的平台名和时间。

这里可以看到已经有这么多人使用了,可见这个神器还是挺受欢迎的。有了这款神奇妈妈再也不用担心我会被人骚扰了。

Top 2.10分钟邮箱

神器地址:

http://24mail.chacuo.net/

看到这里大家想必应该能望文生义吧,其实它也是相当于云短信一样的功能,只是它的强大之处在于它是替换的邮箱号,而云短信则是专注手机短信领域方面,二者虽领域不同,但功能差不多,都是使用虚拟的号码来代替真实的号码在注册,这样以后再也不用担心别人发骚扰信息了,感觉世界会清净许多,下面我们来看下它的界面:

可以看到它目前支持两种邮箱后缀,一个是027168还有一个是chacuo。这里邮箱的获取方式有三种:

1.手动刷新

2.自动刷新

3.自定义邮箱

其中第三种方法最灵活,你想用什么奇葩的邮箱名都可以,比如小编想了一个好名字:

”哎呦不错哦@chacuo.net“,设置好后可以看到:

这样就完成了我们的个性化邮箱了。要注意的是,你的邮箱申请注册后它会提示你的邮箱是否可用,如果提示不可用就重新再设置一个,虽然很好用,但是遗憾的是,这个邮箱号只能保存十分钟,十分钟过后会自动销毁,所以要是用这个邮箱号接收到什么重要的邮件那就赶紧保存吧,免得造成损失了责怪小编没提醒你。

总结

通过对上面两个神器的了解,相信任何人用上了它们,都会给你的日常生活带来更好的感觉,不知道你是怎么认为的了?又或者你还有什么有趣的神器了?欢迎下方评论区留言。

****看完本文有收获?请转发分享给更多的人****

IT共享之家

入群请在微信后台回复【入群】

往期精彩文章推荐:

本地计算机上的MySQL服务启动后停止。某些服务在未由其他服务或程序使用时将自动停止[解决方案]

这几天因为工作需求,需要把MySQL请出来,所以将尘封已久的MySQL进行启动。可是事与愿违,兴许是许久没有访问MySQL了,MySQL生气的不理我,并向外抛出一阵阵报错。

1、其中一个是:Windows无法启动MySQL57服务(位于本地计算机上)错误1067:进程意外终止,报错如下图所示。

MySQL服务启动:某些服务在未由其他服务或程序使用时将自动停止

2、紧跟着还有一个报错:本地计算机上的MySQL服务启动后停止。某些服务在未由其他服务或程序使用时将自动停止,报错如下图所示。

MySQL服务启动:某些服务在未由其他服务或程序使用时将自动停止

3、之后即便我垂死挣扎,在命令行窗口中不断的重启MySQL服务,但是仍然没有戳到痛点,尝试的步骤有下图为证。

MySQL服务启动:某些服务在未由其他服务或程序使用时将自动停止

4、随后想当然的硬上进入MySQL,根本就不可能,只能撞南墙,败兴而归。

MySQL服务启动:某些服务在未由其他服务或程序使用时将自动停止

5、后来也想过直接通过点击“我的电脑>管理>服务>MySQL”,收到启动MySQL,但是丝毫没有改观。

MySQL服务启动:某些服务在未由其他服务或程序使用时将自动停止

6、经过一番尝试之后,还是行不通。无奈之下,不断的寻找blog,终于找到了一个可行的方法,但是代价也是很大的,基本上是给MySQL洗心革面了。如果小伙伴们的原始MySQL中有重要的数据的话,不建议使用这种方法;如果觉得已经在数据库中的数据无关紧要或者不小心遇到了这个问题,那就可以大胆的使用这种方法,只不过是重头再来,具体的解决步骤如下。

首先务必使用管理员权限进入到命令行、务必使用管理员权限进入到命令行、务必使用管理员权限进入到命令行,重要的事情说三遍,不然的话就会出现“发生系统错误 5。 拒绝访问。”这样的错误,如下图所示。

MySQL服务启动:某些服务在未由其他服务或程序使用时将自动停止

7、之后进入到MySQL安装目录下,找到bin目录,这个过程是必须的。这个过程很简单,一路上使用cd命令和dir查看目录文件的命令相互结合,直到进入到bin目录下为止。一般来说,MySQL的安装默认路径是:C:\Program Files\MySQL\MySQL Server 5.7\bin,大家可以做下参考。

MySQL服务启动:某些服务在未由其他服务或程序使用时将自动停止

8、之后进行初始化data目录。如果在与bin目录同级的文件夹下没有data文件夹的话,则创建一个data空目录,名字务必为data。如果有该目录的话,记得要清空data目录下的所有初始文件,就酱紫。

MySQL服务启动:某些服务在未由其他服务或程序使用时将自动停止

9、之后到bin目录下执行命令(管理员身份打开命令行窗口):mysqld –initialize,如下图所示。初始化大概需要20秒左右的时间,静观其变即可。

MySQL服务启动:某些服务在未由其他服务或程序使用时将自动停止

之后就可以看到MySQL服务顺利启动。

而且在状态栏的MySQL Notifier中也会弹出提示,如下图所示,MySQL的状态变为从停止变为启动。

MySQL服务启动:某些服务在未由其他服务或程序使用时将自动停止

10、此时通过命令行窗口再次登录数据库(命令为:mysql –u root -p)就可以顺利进入了,但是输入你之前的历史遗留的密码并不好使了,而且会报错,报错为:ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: YES),如下图所示。

MySQL服务启动:某些服务在未由其他服务或程序使用时将自动停止

这是因为MySQL初始化之后,生成了一个初始密码,放在了data文件夹下以.err为后缀的文件夹下,如下图所示。

MySQL服务启动:某些服务在未由其他服务或程序使用时将自动停止

11、此时,通过电脑自带的记事本打开文件,是不太行得通的,通过sublime text就可以顺利打开了,以“password”为搜索项,很快就定位到初始密码了,如下图所示。

MySQL服务启动:某些服务在未由其他服务或程序使用时将自动停止

这个密码是随机生成的,而且相对复杂,可以直接复杂粘贴到命令行窗口。

12、将初始化密码进行复制,粘贴到MySQL登录的密码中去,如下图所示。

MySQL服务启动:某些服务在未由其他服务或程序使用时将自动停止

此时可以看到,顺利进入到了MySQL。

13、但是直接输入MySQL的简单命令之后,发现并不能操作数据库,会提示报错:ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.,如下图所示。

MySQL服务启动:某些服务在未由其他服务或程序使用时将自动停止

14、这个报错的意思是告诉你重设密码,此时只需要输入命令重新设置密码即可。至于MySQL重设密码的方法网上有很多,在这里不展开讲述了,小编用的语法是:alter user ‘root’@’localhost’ identified by ‘123456’;,其中123456是重设的密码,大家可以自定义的,顺利设置完成之后记得刷新权限:flush privileges;,尔后你就可以正常操作数据库了。该步骤的具体操作过程如下图所示。

MySQL服务启动:某些服务在未由其他服务或程序使用时将自动停止

至此,问题完美的解决了,希望对日后不慎踩入此坑的小伙伴们有帮助~~

看完本文有收获?请转发分享给更多的人

Python爬虫与数据挖掘

入群请在微信后台回复【入群】

手把手教你安装Navicat——靠谱的Navicat安装教程

Navicat是一款轻量级的用于MySQL连接和管理的工具,非常好用,使用起来方便,简洁。下面讲讲其安装的过程。

1、进入navicat官网,选择Navicat for MySQL,然后点击进行下载即可。最好是可以找到破解版(参考链接:在csdn一搜就有 )的navicat,或者先下载过来,然后再进行破解。

手把手教你安装Navicat——靠谱的Navicat安装教程

2、弹出下图界面,任意选择一个和电脑位数对应的版本即可。

手把手教你安装Navicat——靠谱的Navicat安装教程

3、等待下载完成之后,双击navicat进行安装,点击Next。

手把手教你安装Navicat——靠谱的Navicat安装教程

4、选择同意协议,然后点击Next。

手把手教你安装Navicat——靠谱的Navicat安装教程

5、设置Navicat的安装路径,至少要保证磁盘有140M的安装空间。在这里,选择默认的安装路径,也可以根据自己的情况安装在其他的盘。

手把手教你安装Navicat——靠谱的Navicat安装教程

6、选择开始目录,默认或者更改都可以,这里直接默认,然后继续进行下一步。

手把手教你安装Navicat——靠谱的Navicat安装教程

7、这一步是是否创建桌面图标,默认是勾选上的。直接保持默认即可,然后选择下一步。

手把手教你安装Navicat——靠谱的Navicat安装教程

8、准备安装。如果前面已经设置好了的话,这一步直接点击“Install”即可,之后便可以进行安装了。

手把手教你安装Navicat——靠谱的Navicat安装教程

9、安装进行中,如下图所示。

手把手教你安装Navicat——靠谱的Navicat安装教程

10、等待安装完成,如下图所示,之后点击“Finish”。

手把手教你安装Navicat——靠谱的Navicat安装教程

11、此时在桌面上便可以看到Navicat已经显示出来了,如下图所示。

手把手教你安装Navicat——靠谱的Navicat安装教程

至此,Navicat安装完成,是不是很简单呢?

看完本文有收获?请转发分享给更多的人

Python爬虫与数据挖掘

入群请在微信后台回复【入群】