首页
我能做的
记录
老李是谁
影视导航
Search
1
x99鸡血BIOS教程(附工具和华南X99-QD3鸡血BIOS下载)
3,000 阅读
2
主板BIOS开启CSM方法(华硕、微星、技嘉)
2,163 阅读
3
湖北电信/联通/移动DNS服务器地址大全
1,775 阅读
4
关于PUBG游戏提示未授权硬件的常见解决办法
1,765 阅读
5
推荐一些E5装机玩游戏的CPU
1,623 阅读
老李原创
技术笔记
系统固件包
经营心得
虚拟化
软件工具
无盘万能包
登录
Search
标签搜索
记录
无盘
问题解决
虚拟化
源码
心得
ARM
游戏
开源项目
硬件
linux
网管老李 VX:lizhi0710
累计撰写
209
篇文章
累计收到
0
条评论
首页
栏目
老李原创
技术笔记
系统固件包
经营心得
虚拟化
软件工具
无盘万能包
页面
我能做的
记录
老李是谁
影视导航
搜索到
145
篇与
的结果
2024-05-07
MySQL数据库常用命令
可以使用 “Ctel+F”快速定位MySQL数据库常用命令创建数据库:create database 数据库名 [charset] [字符编码] [collate] [校验规则];查看创建结果:show create database 数据库名;查看所有数据库:show databases;查看当前使用的数据库:select database();命令行方式连接数据库:mysql -u 数据库用户名 -p 数据库密码打开指定的数据库:use 数据库名;命令行方式连接数据库:mysql -u数据库用户名 -p数据库密码命令行方式备份数据库:mysqldump -u 数据库用户名 -p 目标数据库名 > 备份文件名.sql;命令行方式恢复数据库::mysql -u 数据库用户名 -p 目标数据库名 < 备份文件名.sql;修改数据库:alter database [数据库名] [default] character set <字符集名> [default] collate <校对规则名>;SQL语句方式删除数据库:drop database 数据库名;在命令提示窗口中删除数据库:mysqladmin -u root -p drop 数据库名设置主键:create table 数据表名(主键字段名 数据类型 unsigned PRIMARY KEY auto_increment, ...); create table 数据表名(字段名 数据类型, ...,primary key (主键字段名)); 添加主键: alter table 数据表名 add primary key(主键字段名);删除主键:alter table 数据表名 drop primary key;在创建数据库时设置外键:create table 数据表名(constraint 外键名 foreign key(自己的字段) references 主表(主表字段));指定外键:alter table 表名 add constraint 外键名 foreign key(自己的字段) references 主表(主表字段);删除外键:alter table 表名 drop foreign key 外键名称;创建表:create table 表名(字段名 类型 约束, 字段名 类型 约束 ...) 引擎;查看创建的表:show create table 表名;创表语句:判断表是否存在,存在时先删除再创建DROP TABLE IF EXISTS 表名;CREATE TABLE 表名(字段名1 类型 约束, 字段名2 类型 约束, ...) ENGINE=INNODB DEFAULT CHARSET=utf8 DEFAULT COLLATE utf8_general_ci;CREATE TABLE 表名(字段名1 类型 约束, 字段名2 类型 约束, ...) ENGINE=INNODB DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;unsigned:无符号(正负符号,无符号即为正);auto_increment:自增长;设置自增长起始值:auto_increment=起始值查看所有表:show tables;查看表信息:show create table 表名;查看表结构(字段):desc 表名;修改数据库字符集:alter database 数据库名 character set 字符集名 collate 校对规则;修改表的字符集:alter table 表名 convert to character set 字符集名 collate 校对规则;修改表的存储引擎: alter table 表名 engine=引擎名;复制表:复制表结构:create table 新表名 like 旧表名;同时复制结构和数据:create table 新表名 as (select * from 旧表名);*前者会复制旧表完整结构,包括约束条件,但不复制数据;后者只复制基本结构和数据,但不复制约束条件。删除数据表格式一:drop table 表名;删除数据表格式二:drop table if exists 表名;修改表名:alter table 原表名 rename 新表名;修改字段数据类型:alter table 表名 modify 字段名 数据类型;修改ENUM字段: alter table 表名 modify 字段名 enum("值1","值2",...,"值n");修改SET字段: alter table 表名 modify 字段名 set("值1","值2",...,"值n");修改表的字段为唯一性约束:alter table 表名 modify 字段名 数据类型 unique; 或者:alter table 表名 change 原字段名 新字段名 数据类型 unique; 删除表的字段唯一性约束:alter table 表名 drop index 唯一性字段索引; 或者:drop index 唯一性字段索引 on 表名; 修改字段顺序:alter table 表名 modify 字段名 数据类型 first; alter table 表名 modify 字段名1 数据类型 after 字段名2; 修改字段名称:alter table 表名 change 原字段名 新字段名 数据类型;添加字段:alter table 表名 add 字段名 数据类型;在表的第一列添加字段:alter table 表名 add 字段名 数据类型 first;在表的指定列之后添加字段:alter table 表名 add 字段名 数据类型 after 字段名;删除字段:alter table 表名 drop 字段名;添加数据格式一:所有字段设置值,值的顺序与表中字段的顺序对应说明:主键列是自动增长,插入时需要占位,通常使用0或者default或者null来占位,后以实际数据为准。语法格式:insert into 表名 values(...)添加数据格式二:部分字段设置值,值的顺序与给出的字段顺序对应语法格式:insert into 表名(字段1, ...) values(值1, ...)添加多行数据:写一条 insert 语句,设置多条数据,数据之间用英文逗号隔开格式一:insert into 表名 values(...), (...) ...;格式二:insert into 表名(列1, ...) values(值1, ...), (值2, ...) ...;替换已存在主键值的记录数据:replace into 表名(列1, ...) values(值1, ...), (值2, ...) ...;*如果表中已经存在主键值,需要插入一个同键值数据,因为违反唯一性规则是不允许的,但是可能用另一记录替换这一记录的。修改数据:update 表名 set 列1=值1, 列2=值2 ... where 条件;删除数据格式一:delete from 表名 where 条件; * 注意:where不能省略,否则会删除全部数据删除数据格式二:truncate table 表名; (删除表的所有数据,保留表结构)删除数据格式三:drop table 表名; (删除表,所有数据和表结构都删掉)查询所有字段:select * from 表名;查询部分字段:select 字段1, 字段2, ... from 表名;查询时为了书写简单,给起别名:select 别名.字段1, 别名.字段2, ... from 表名 [as] 别名;查询结果为了显示为与字段不同的名称,给字段取别名:select 字段1 as 别名1, 字段2 as 别名2, ... from 表名;查询去重,只取唯一值:select distinct 字段1, ... from 表名;复杂查询:定义:在基础查询基础上,根据需求描述关系进行查询;实际应用中往往是多种复合查询的组合使用分类:条件查询、聚合函数、排序查询、分组查询、分页查询、连接查询、自关联查询、子查询等条件查询:select 字段1, 字段2 ... from 表名 where 条件;说明:where后面支持多种运算符,进行条件的处理比较运算符:=、>、<、>=、<=、!=或<>逻辑运算符:and(与)、or(或)、not(非)模糊查询:like "%、_等通配符组合" (%表示任意多个任意字符,_表示一个任意字符)(举如:name like '孙%'; name like '孙_';)范围查询:in:表示在一个非连续的范围内 格式:in(..., ...) 例如:where hometown in('北京', '上海', '深圳');between ... and ... :表示在一个连续的范围内 例如:age between 18 and 20;空判断:判空:is null 例如:card is null;判非空:is not null 例如:card is not null;注意:在MySQL中,只有现实为NULL的才为空! 空格/制表符/换行符等是空白符号,用' '表示; NULL与' '是不同的。 聚合函数:常用聚合函数:count()、max()、min()、sum()、avg()*聚合函数不能在where子句中使用。count():查询总记录数 格式:count(字段名),count(* )表示计算总行数注意:统计数据总数,建议使用*,如果使用某一特定字段,可能会造成数据总数错误!max():查询最大值 格式:max(字段名)min():查询最小值 格式:min(字段名)sum():求和 格式:sum(字段名)avg():求平均值 格式:avg(字段名)排序查询:select * from 表名 order by 列1 asc/desc, 列2 asc/desc, ...;注意:默认升序,asc可省略;desc降序。分组查询: select 字段1, 字段2, 聚合函数 ... from 表名 group by 字段1, 字段2...例1:查询各种性别的人数:select sex, count(* ) from students group by sex;例2:查询每个班级中各种性别的人数:select class, sex, count(* ) from students group by class, sex;分组后的数据筛选:select 字段1, 字段2, 聚合 ... from 表名 group by 字段1, 字段2, 字段3 ... having 字段1, ... 聚合函数 ...注意:1)group by后面增加过滤条件时,需要使用having关键字;group by和having一般情况下需要配合使用2)group by后边不推荐使用where进行条件过滤,推荐使用having进行条件过滤3)having关键字后面可以使用的内容与where完全一致(比较运算符/逻辑运算符/模糊查询/判断空)4)having关键字后面允许使用聚合函数,where后面不允许使用聚合函数举例:select sex, count(* ) from students group by sex having sex='男'; select sex, count(* ) from students group by sex having count(*)>=7; where 与 having 的区别:1)where是对from后面指定的表进行数据筛选,属于对原始数据的筛选;2)having是对group by的结果进行筛选;3)having后面的条件可以用聚合函数where后面不可以。例:查询班级平均年龄大于22岁的班级有哪些:select class from students group by class having avg(age)>22;分页查询:select * from 表名 limit start, count;分行格式(查 m ~ n 行的数据):select * from 表名 limit m-1, n-m+1;注意:1)limit start, count;start:起始行号;count:显示数据行数(增加的行数)。2)计算机的计数是从0开始,因此start默认的第一条数据应该为0。3)start索引从0开始,如果默认从第一条数据开始获取,则0可以省略即显示前5条记录有以下两种写法:select from 表名 limit 0, 5; 或者select from 表名 limit 5;查询分页后某页的数据:select from 表名 limit (n-1) m, m;说明:m为每页显示数据条数,n为需显示的页码例每页显示10条数据,需要查询第6页的数据select * from 表名 limit 50,10;查询语句子句书写顺序:select-from-where-group by-having-order by-limit连接查询:内连接:inner join ... on ...(旧式写法:select * from 表1, 表2 where 表1.列=表2.列;)左连接:left join ... on ...右连接:right join ... on ...语法格式:select * from 表1 inner join 表2 on 表1.列=表2.列; select * from 表1 left join 表2 on 表1.列=表2.列; select * from 表1 right join 表2 on 表1.列=表2.列; 自关联查询:自关联:将同一表通过起别名的方式,自己和自己关联。是给表起别名和连接查询的联合使用。语法格式:select * from 表 as 表1 inner join 表 as 表2 on 表1.列=表2.列; select * from 表 as 表1 left join 表 as 表2 on 表1.列=表2.列; select * from 表 as 表1 right join 表 as 表2 on 表1.列=表2.列; 组合查询:MySQL也允许执行多个查询(多条SELECT语句),并将结果作为单个查询结果集返回。组合查询两种基本情况:在单个查询中从不同的表返回类似结构的数据;对单个表执行多个查询,按单个查询返回数据。创建和使用组合查询:关键字:UNION创建UNION:SELECT语句 UNION SELECT语句 UNION ...UNION规则:1)UNION必须由两条或两条以上的SELECT语句组成,语句之间用关键字UNION分隔(因此,如果组合4条SELECT语句,将要使用3个UNION关键字)。2)UNION中的每个查询必须包含相同的列、表达式或聚集函数(不过各个列不需要以相同的次序列出)。3)列数据类型必须兼容:类型不必完全相同,但必须是DBMS可以隐含地转换的类型(例如,不同的数值类型或不同的日期类型)。包含或取消重复的行:UNION的默认从查询结果集中自动去除了重复的行(即 它与单条SELECT语句中使用多个WHERE子句条件一样)。MySQL使用UNION ALL来显示全部行,包括重复的行。UNION ALL为UNION的一种形式,它完成WHERE子句完成不了的工作。如果确实需要每个条件的匹配行全部出现(包括重复行),则必须使用UNION ALL而不是WHERE。举例:SELECT vend_id, prod_id, prod_price FROM products WHERE prod_price <= 5 UNION ALL SELECT vend_id, prod_id, prode_price FROM products WHERE vend_id IN (1001, 1002);对组合查询结果排序:在用UNION组合查询时,只能使用一条ORDER BY子句,它必须出现在最后一条SELECT语句之后。举例:举例:SELECT vend_id, prod_id, prod_priceFROM productsWHERE prod_price <= 5UNIONSELECT vend_id, prod_id, prode_priceFROM productsWHERE vend_id IN (1001, 1002)ORDER BY vend_id, prod_price;UNION 和 多条WHERE子句:使用UNION可极大地简化复杂的WHERE子句,简化从多个表中检索数据的工作。对于更复杂的过滤条件,或者从多个表(而不是单个表)中检索数据的情形,使用UNION可能会使处理更简单。使用UNION的组合查询还可以应用不同的表。举例:举例:SELECT vend_id, prod_id, prod_priceFROM productsWHERE prod_price <= 5UNIONSELECT vend_id, prod_id, prode_price FROM productsWHERE vend_id IN (1001, 1002);SELECT vend_id, prod_id, prod_priceFROM productsWHERE prod_price <= 5OR vend_id IN (1001, 1002);子查询:定义:在一个查询套入另一个查询的过程(充当条件或者数据源)说明:查询语句中包含另一个查询语句,分为主查询和子查询,充当子查询的语句需要使用括号括起来(运算优先级括号最高!)主查询:外层的?select?语句称之为主查询语句子查询:在一个?select?语句中,嵌入了另外一个?select?语句,那么嵌入的?select?语句称之为子查询语句主查询和子查询的关系:1)子查询是嵌入到主查询中的2)子查询是可以独立使用的语句,是一条完整的?select?语句3)子查询是辅助主查询的,要么充当条件,要么充当数据源子查询语句充当条件:需求:查询价格高于平均价的商品信息语句:select * from goodswhere price > (select avg(price) from goods);子查询语句充当数据源:需求:?查询所有来自并夕夕的商品信息,包含商品分类语句:SELECT * FROM (SELECT * FROM goods go LEFT JOIN category ca ON go.typeId=ca.typeId) new WHERE new.company='并夕夕';问题:连接查询的结果中,表和表之间的字段名不能出现重复,否则无法直接使用解决:将重复字段使用别名加以区分(表.*?:表示当前表的所有字段):举例:SELECT * FROM(SELECT go.* , ca.id cid, ca.typeId ctid, ca.cateName FROM goods go LEFT JOIN category ca ON go.typeId=ca.typeId) new WHERE new.company='并夕夕';三、数据库进阶1、索引定义:快速查找特定值的记录作用:提高查询排序的速度,即 可以大幅度提高查询语句的执行效率个数:一个表主键只能有一个设置索引:语法格式:CREATE INDEX 索引名称 ON 表名(字段名称(长度));注意:1)表已存在的时候创建索引2)如果大量增加索引设置,会严重影响除数据查询操作以外的其他操作(增/删/改)的操作效率,不方便过多添加。举例:CREATE INDEX name_index ON create_index(name(10));删除索引:语法格式:DROP INDEX 索引名称 ON 表名;举例:DROP INDEX name_index ON create_index;扩展:验证索引效果案例实现步骤1)开启运行时间监测:set profiling=1;2)查找第一万条数据10000:select * from test_index where num='10000';3)查看执行时间:show profiles;4)为表 test_index 的 num 列创建索引:create index test_index on test_index(num);5)执行查询语句:select * from test_index where num='10000';6)再次查看执行时间:show profiles;2、视图定义:视图是虚拟的表。其包含的不是数据而是根据需要检索数据的查询。视图提供了一种MySQL的SELECT语句层次的封装,可用来简化数据处理以及重新格式化基础数据或保护基础数据。注意:1)MySQL 5添加了对视图的支持。本文内容适用于MySQL 5及以后的版本。2)视图仅仅是用来查看存储在别处的数据的一种设施。其本身不包含任何列和数据,它包含的是一个SQL查询,其返回的数据是从其他表中检索出来的。另外,在添加或更改这些表中的数据时,视图将返回改变过的数据。3)视图的使用与表基本相同,如:可以对视图执行SELECT操作,过滤和排序数据,将视图联结到其他视图或表,甚至能添加和更新数据,但添加和更新数据会存在某些限制。4)性能问题:在使用视图时,都必须处理查询执行时所需的任一个检索。如果要用多个联结和过滤创建了复杂的视图或者嵌套了视图,可能会发现性能下降得很厉害。因此,在部署使用了大量视图的应用前,应该进行测试。作用:1)重用SQL语句。2)简化复杂的SQL操作。视图可以方便地被重用,而不必知道其查询细节。3)保护数据。视图使用的是表的组成部分而不是整个表,因此可以给用户授予表的特定部分的访问权限而不是整个表的访问权限。4)更改数据格式和表示。视图可返回与底层表的表示和格式不同的数据。创建视图:关键字:CREATE VIEW语法格式:CREATE VIEW 视图名 AS SELECT语句;注意:1)创建视图必须具有足够的访问权限2)创建的视图数目没有限制3)视图名字必须唯一命名,不能与别的视图或表有相同的名字4)视图可以嵌套使用,即可以利用从其他视图中检索数据的查询来构造一个视图5)视图可以和表一起使用。如,编写一条联结表和视图的SELECT语句6)视图中的ORDER BY和其检索数据的SELECT语句中同时含有ORDER BY时,那么该视图中的ORDER BY将被覆盖。7)视图不能索引,也不能有关联的触发器或默认值。查看视图:关键字:SHOW语法格式:SHOW CREATE VIEW 视图名;修改视图:方法一:先用DROP再用CREATE。DROP CREATE VIEW 视图名;CREATE VIEW 视图名 AS SELECT语句;方法二:CREATE OR REPLACE VIEW 视图名 AS SELECT语句;如果要更新的视图不存在,则会创建一个视图;如果要更新的视图存在,则会替换原有视图。更新视图“数据”:更新视图“数据”的本质:视图本身没有数据,所以对视图增加或删除行,实际上是对其基表增加或删除行。更新视图的限制:通常视图是可更新的(即,视图可以使用INSERT、UPDATE和DELETE),但并非所有视图都是可更新的,如果MySQL不能正确地确定被更新的基数据,则不允许更新(包括插入和删除)。视图定义中有分组(使用GROUP BY和HAVING)、联结、子查询、?并(and)、?聚集函数(Min()、Count()、Sum()等)、DISTINCT、?导出(计算)列等的操作时,视图不能进行更新。更新视图虽然有这么多限制,但请记住视图主要还是用于数据查询,如果要更新数据,可以到基表中进行更新。删除视图:关键字:DROP语法格式:DROP CREATE VIEW 视图名;应用场景:1)利用视图简化复杂的联结:视图的最常见的应用之一是隐藏复杂的SQL,这通常都会涉及联结。举例:编写基础SQL,创建视图:CREATE VIEW productcustomers AS SELECT cust_name, cust_contact, prod_idFROM customers, orders, orderitemsWHERE customers.cust_id = orders.cust_idAND orderitems.order_num = orders.order_num;使用视图查询订购了产品TNT2的客户:SELECT * FROM productcustomersWHERE prod_id = 'TNT2';2)用视图重新格式化检索出的数据:视图的另一常见用途是重新格式化检索出的数据。举例:编写基础SQL,创建视图:CREATE VIEW vendorlocationsAS SELECT Concat(RTrim(vend_name), '(', RTrim(vend_country), ')' AS vend_title FROM venders ORDER BY vend_name; 使用视图查询出以创建所有邮件标签的数据(基础SQL:在单个组合计算列中返回供应商名和位置):SELECT * FROM vendorlocations;3)用视图过滤不想要的数据:视图对于应用普通的WHERE子句也很有用。举例:编写基础SQL,创建视图:CREATE VIEW customeremaillistAS SELECT cust_id,cust_name, cust_email FROM customersWHERE cust_email IS NOT NULL;使用视图,查询出有邮件地址的客户数据:SELECT * FROM customeremaillist;4)使用视图与计算字段:视图对于简化计算字段的使用特别有用。举例:编写基础SQL,创建视图:CREATE VIEW orderitemsexpanded AS SELECT order_num, prod_id, quantity, item_price, quantity* item_price AS expanded_price FROM orderitems; 使用视图,查询订单20005的详细内容包括每种物品的总价格的数据:SELECT * FROM orderitemsexpandedWHERE order_num = 20005;注意:?视图中的WHERE子句与基础SQL语句中的WHERE子句同时出现时,二者将自动组合。3、存储过程定义:简单来说,就是为以后的使用而保存的一条或多条MySQL语句的集合。可将其视为批文件,虽然它们的作用不仅限于批处理。优点简单:把处理封装在容易使用的单元中,简化复杂的操作,简化对变动的管理。如果表名、列名或业务逻辑(或别的内容)有变化,只需要更改存储过程的代码。安全:由于不要求反复建立一系列处理步骤,且所有开发人员和应用程序都是用同一存储过程,这保证了数据的完整性和一致性。另外,通过存储过程限制对基础数据的访问减少了数据讹误的机会,保证了数据安全性。高性能:提高性能。因为使用存储过程比使用单独的SQL语句要快。存储过程可以使用只能用在单个请求中的MySQL元素和特性来编写功能更强更灵活的代码。缺点存储过程的编写比基本SQL语句复杂,编写存储过程需要更高的技能,更丰富的经验。创建存储过程需要数据库的安全访问权限。许多数据库管理员限制存储过程的创建权限,允许用户使用存储过程,但不允许他们创建存储过程。创建存储过程关键字:CREATE、PROCEDURE语法格式:CREATE PROCEDURE 存储过程名(参数1, 参数2, ... ) COMMENT '描述文字'BEGINSELECT语句; END;分隔符:?MySQL命令行客户机的分隔符为:';',而MySQL语句分隔符也是:';',所以如果使用MySQL命令行实用程序创建或执行存储过程,则需要临时更改MySQL命令行实用程序的语句分隔符,来保证存储过程中的SQL语句作为其成分而且不出现句法错误。具体步骤如下:1)临时修改命令行实用程序的语句分隔符:DELIMITER //2)同时,标志存储过程结束的END定义为END //而不是END ;3)存储过程执行完成后,恢复命令行实用程序的语句分隔符:DELIMITER ;?。注意:除\符号外,任何字符都可以用作语句分隔符。完整代码:DELIMITER //CREATE PROCEDURE 存储过程名(参数1, 参数2, ... ) COMMENT '描述文字'BEGINSELECT语句; END //DELIMITER ;举例:创建存储过程:DELIMITER //CREATE PROCEDURE productpricing()BEGINSELECT Avg(prod_price) AS priceaverage FROM products; END //DELIMITER ;执行存储过程:CALL productpricing();参数类型:每个参数必须具有指定的类型MySQL支持的参数类型:IN(传递给存储过程)OUT(从存储过程传出,关键字OUT指出相应的参数用来从存储过程传出一个值(返回给调用者)INOUT(对存储过程传入和传出)参数定义格式:基本格式:IN/OUT/INOUT 变量名 变量的数据类型变量(variable)内存中一个特定的位置,用来临时存储数据。所有MySQL变量都必须以@开始。参数变量也需要指定其数据类型。参数变量的数据类型:存储过程的参数允许的数据类型与表中使用的数据类型相同。常用数据类型:INT、DECIMAL、DOUBLE、FLOAT、BOOLEAN、CHAR、VARCHAR、TEXT、DATE、TIME、DATETIME、YEAR多个参数用英文逗号,分隔,最后一个参数后不需要逗号参数使用:?存储过程的代码位于BEGIN和END语句内,它们是一系列SELECT语句,用来检索值,一般存储过程并不显示结果,而是把结果保存到相应的变量(通过指定INTO关键字),然后再通过SELECT @参数变量名;?来显示结果数据或者将其用于其他处理程序中。执行有参数的存储过程:在创建存储过程时指定了n个参数,则在调用此存储过程时就必须传递n个参数,不能多也不能少。在执行时并不会显示任何数据。它通过SELECT @参数变量名;?来显示变量的值或者用在其他处理程序中。例1:'''创建存储过程:此存储过程接受3个参数:pl存储产品最低价格,ph存储产品最高价格,pa存储产品平均价格。每个参数必须具有指定的类型,这里使用十进制值。关键字OUT指出相应的参数用来从存储过程传出一个值(返回给调用者)。'''CREATE PROCEDURE productpricing(OUT pl DECIMAL(8, 2), OUT ph DECIMAL(8, 2), OUT pa DECIMAL(8, 2))BEGINSELECT Min(prod_price) INTO pl FROM products; SELECT Max(prod_price) INTO ph FROM products; SELECT Avg(prod_price) INTO pa FROM products; END;执行存储过程(这条语句并不显示任何数据):CALL productpricing(@pricelow, @pricehigh, @priceaverage);显示检索出的产品平均价:*SELECT @priceaverage;显示检索出的产品最低价、最高价和平均价:SELECT @pricelow, @pricehigh, @priceaverage;例2:'''创建存储过程:此存储过程使用IN和OUT参数。ordertotal接受订单号并返回该订单的合计。onumber定义为IN,因为订单号被传入存储过程。ototal定义为OUT,因为要从存储过程返回合计。SELECT语句使用这两个参数,WHERE子句使用onumber选择正确的行,INTO使用ototal存储计算出来的合计:'''CREATE PROCEDURE ordertotal(IN onumber INT, OUT ototal DECIMAL(8, 2))BEGINSELECT Sum(item_price* quantity) FROM orderitems WHERE order_num = onumber INTO ototal; END;执行存储过程(调用这个新存储过程):必须给ordertotal传递两个参数;第一个参数为订单号,第二个参数为包含计算出来的合计的变量名:CALL ordertotal(20005, @total);显示此合计(@total已由ordertotal的CALL语句填写,SELECT显示它包含的值):SELECT @total;显示另一个订单的合计:再次调用存储过程,然后重新显示变量:CALL ordertotal(20009, @total);SELECT @total;执行存储过程:关键字:CALL语法格式:CALL 存储过程名(@参数1, @参数2, ... )注意:因为存储过程实际上是一种函数,所以存储过程名后需要有()符号(即使不传递参数也需要)。举例:创建ordertotal存储过程:CREATE PROCEDURE ordertotal()BEGINSELECT语句; END;执行ordertotal存储过程:CALL ordertotal();删除存储过程:关键字:DROP、PROCEDURE语法格式一:DROP PROCEDURE 存储过程名;语法格式二:DROP PROCEDURE IF EXISTS 存储过程名;仅当存在时删除,当过程存在则删除,如果过程不存在也不产生错误。举例:创建ordertotal存储过程:CREATE PROCEDURE ordertotal()BEGINSELECT语句; END;删除ordertotal存储过程:DROP PROCEDURE ordertotal;DROP PROCEDURE IF EXISTS ordertotal;检查存储过程:关键字:SHOW语法格式一:SHOW CREATE PROCEDURE 存储过程名;显示用来创建一个存储过程的CREATE语句语法格式二:SHOW CREATE PROCEDURE STATUS;显示包括何时、由谁创建等详细信息的存储过程列表语法格式三:SHOW CREATE PROCEDURE STATUS LIKE '存储过程名';显示某个存储过程的详细信息举例:创建ordertotal存储过程:CREATE PROCEDURE ordertotal()BEGINSELECT语句; END;检查存储过程:SHOW CREATE PROCEDURE ordertotal;SHOW CREATE PROCEDURE STATUS LIKE 'ordertotal';建立智能存储过程:?存储过程内包含业务规则和智能处理应用场景:你需要获得与以前一样的订单合计,但需要对合计增加营业税,不过只针对某些顾客(或许是你所在州中那些顾客)。那么,你需要做下面几件事情:获得合计(与以前一样);把营业税有条件地添加到合计;返回合计(带或不带税)。存储过程的完整工作:创建存储过程:Name: ordertotalParameters: onumber = order number taxable=0 if not taxable, 1 if taxable ototal=order total variable CREATE PROCEDURE ordertotal(IN onumber INT, IN taxable BOOLEAN, OUT ototal DECIMAL(8,2)) COMMENT 'Obtain order total, optionally adding tax'BEGIN# Declare variable for total DECLARE total DECIMAL(8,2); # Declare tax percentage DECLARE taxrate INT DEFULT 6; # Get the order total SELECT Sum(item_price* quantity) FROM orderitems WHERE order_num = onumber INTO total; # Is this taxable? IF taxable THEN # Yes, so add taxrate to the total SELECT total+(total/100* taxrate) INTO total;` END IF; # And finally, save to out variable SELECT total INTO ototal; END;执行次存储过程,并显示数据结果:CALL ordertotal(20005, 0, @total);SELECT @total;解析:1)首先,增加了注释(前面放置--)。在存储过程复杂性增加时,这样做特别重要。2)添加了另外一个参数taxable,它是一个布尔值(如果要增加税则为真,否则为假)。3)在存储过程体中,用DECLARE语句定义了两个局部变量。DECLARE要求指定变量名和数据类型,它也支持可选的默认值(这个例子中的taxrate的默认被设置为6%)。4)SELECT语句已经改变,因此其结果存储到total(局部变量)而不是ototal。5)IF语句检查taxable是否为真,如果为真,则用另一SELECT语句增加营业税到局部变量total。6)最后,用另一SELECT语句将total(它增加或许不增加营业税)保存到ototal。7)COMMENT关键字:本例子中的存储过程在CREATE PROCEDURE语句中包含了一个COMMENT值。它不是必需的,但如果给出,将在SHOW PROCEDURE STATUS的结果中显示。举例:使用SQL快速插入100000条数据使用DELIMITER关键字临时声明修改SQL语句的结束符为//DELIMITER //创建存储过程create procedure test()Begin声明一个默认值为0的局部变量ideclare i int default 0; # 开始循环 while i<100000 do # books是表名, name是字段名 test是字段值 insert into books(name)value("test"); # 使用set为参数赋值 set i=i+1; end while; end //将结束符重新定义回结束符为";"DELIMITER ;调用函数call test();4、游标定义:游标(cursor)是一个存储在MySQL服务器上的数据库查询,它不是一条SELECT语句,而是被该语句检索出来的结果集。在存储了游标之后,应用程序可以根据需要滚动或浏览其中的数据。游标主要用于交互式应用,其中用户需要滚动屏幕上的数据,并对数据进行浏览或做出更改。注意:MySQL游标只能用于存储过程(和函数)。存储过程处理完成后,游标就消失(因为它局限于存储过程)。创建游标:关键字:DECLARE语法格式:DECLARE 游标名 CURSOR FOR SELECT语句;DECLARE语句的次序:DECLARE语句的发布存在特定的次序。用DECLARE语句定义的局部变量必须在定义任意游标或句柄之前定义,而句柄必须在游标之后定义。不遵守此顺序将产生错误消息。即:DECLARE 局部变量,DECLARE 游标,DECLARE 句柄举例:CREATE PROCEDURE processorders()BEGINDECLARE ordernumbers CURSOR FOR SELECT order_num FROM orders; END;打开/关闭游标:打开游标:OPEN 游标名;关闭游标:CLOSE 游标名;隐含关闭:MySQL将会在到达END语句时自动关闭它。注意:在处理OPEN语句时执行查询,存储检索出的数据以供浏览和滚动。CLOSE释放游标使用的所有内部内存和资源,因此在每个游标不再需要时都应该关闭。在一个游标关闭后,再次使用游标需要再用OPEN语句打开它,但使用声明过的游标不需要再次声明。举例:CREATE PROCEDURE processorders()BEGIN# Declare the cursor DECLARE ordernumbers CURSOR FOR SELECT order_num FROM orders; # Open the cursor OPEN ordernumbers; # Close the cursor CLOSE ordernumbers; END;解析:?这个存储过程只是声明、打开和关闭一个游标,并未对检索出的数据做其他操作。使用游标数据:关键字:FETCHFETCH指定检索什么数据(所需的列),检索出来的数据存储在什么地方。它还向前移动游标中的内部行指针,使下一条FETCH语句检索下一行(不重复读取同一行)。步骤:1)在能够使用游标前,必须声明(定义)它。这个过程实际上没有检索数据,它只是定义要使用的SELECT语句。在声明游标后,可根据需要频繁地打开和关闭游标。2)一旦声明后,必须打开游标以供使用。这个过程用前面定义的SELECT语句把数据实际检索出来。在游标打开后,可根据需要频繁地执行取操作。3)对于填有数据的游标,根据需要取出(检索)各行。4)在结束游标使用时,必须关闭游标。例1:从游标中检索单个行(第一行)CREATE PROCEDURE processorders()BEGIN# Declare local variables DECLARE o INT; # Declare the cursor DECLARE ordernumbers CURSOR FOR SELECT order_num FROM orders; # Open the cursor OPEN ordernumbers; # Get order number FETCH ordernumbers INTO o; # Close the cursor CLOSE ordernumbers; END;解析:FETCH用来检索当前行的order_num列(将自动从第一行开始)到一个名为o的局部声明的变量中。对检索出的数据不做任何处理。例2:循环检索数据,从第一行到最后一行CREATE PROCEDURE processorders()BEGIN# Declare local variables DECLARE done BOOLEAN DEFAULT 0; DECLARE o INT; # Declare the cursor DECLARE ordernumbers CURSOR FOR SELECT order_num FROM orders; # Declare continue handler DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET done = 1; # Open the cursor OPEN ordernumbers; # Loop through all rows REPEAT # Get order number FETCH ordernumbers INTO o; # End of loop UNTIL done END REPEAT; # Get order number FETCH ordernumbers INTO o; # Close the cursor CLOSE ordernumbers; END;解析:1)用一个DEFAULT 0(假,不结束)定义变量done(DECLARE done BOOLEAN DEFAULT 0;)。2)定义一个CONTINUE HANDLER(DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET done = 1;),它是在条件出现时被执行的代码。这里,它指出当SQLSTATE '02000’出现时,SET done=1。SQLSTATE'02000’是一个未找到条件,当REPEAT由于没有更多的行供循环而不能继续时,出现这个条件。出现这个未找到的条件后就将done设置为真。3)在REPEAT内,反复执行FETCH检索当前order_num到声明的名为o的变量中,直到done为真(由UNTIL done END REPEAR;?规定)。4)如果调用这个存储过程,它将定义几个变量和一个CONTINUE HANDLER,定义并打开一个游标,重复读取所有行,然后关闭游标。如果一切正常,你可以在循环内放入任意需要的处理(在FETCH语句之后,循环结束之前)。5)MySQL还支持循环语句,它可用来重复执行代码,直到使用LEAVE语句手动退出为止。通常REPEAT语句的语法使它更适合于对游标进行循环。例3:对循环取出的数据进行某种实际的处理CREATE PROCEDURE processorders()BEGIN# Declare local variables DECLARE done BOOLEAN DEFAULT 0; DECLARE o INT; DECLARE t DECIMAL(8,2); # Declare the cursor DECLARE ordernumbers CURSOR FOR SELECT order_num FROM orders; # Declare continue handler DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET done = 1; # Create a table to store the results CREATE TABLE IF NOT EXISTS ordertotals( order_num INT, total DECIMAL(8, 2)); # Open the cursor OPEN ordernumbers; # Loop through all rows REPEAT # Get order number FETCH ordernumbers INTO o; # Get the total for this order CALL ordertotal(o, 1, t); # Insert order and total into ordertotals INSERT INTO ordertotals(order_num, total) VALUES(o, t); # End of loop UNTIL done END REPEAT; # Close the cursor CLOSE ordernumbers; END;解析:1)增加了另一个名为t的变量(存储每个订单的合计)2)此存储过程还在运行中创建了一个新表(如果它不存在的话),名为ordertotals。这个表将保存存储过程生成的结果。3)FETCH像以前一样取每个order_num,然后用CALL执行另一个存储过程ordertotal(在介绍存储过程的内容中创建)来计算每个订单的带税的合计(结果存储到t)。4)最后,用INSERT保存每个订单的订单号和合计。5)此存储过程不返回数据,但它能够创建和填充另一个表,可以用一条简单的SELECT语句查看该表:SELECT * FROM ordertotals;6)这是一个集存储过程、游标、逐行处理以及存储过程调用其他存储过程的一个完整的工作样例。5、触发器定义:触发器是MySQL响应以下任意语句而自动执行的一条MySQL语句(或位于BEGIN和END语句之间的一组语句):DELETE、INSERT、UPDATE;其他MySQL语句不支持触发器。创建触发器:基本信息:唯一的触发器名。为了保持每个数据库的触发器名唯一,在MySQL 5中,最好是在数据库范围内使用唯一的触发器名。虽然触发器名在每个数据库中可以不唯一但最好命名时保证每个数据库范围内的触发器名唯一。触发器关联的表;触发器应该响应的活动(DELETE、INSERT或UPDATE);触发器何时执行(处理之前或之后)。关键字:CREATE、TRIGGER语法格式:CREATE TRIGGER 触发器名 BEFORE/AFTER DELETE/INSERT/UPDATE ON 表名 FOR EACH ROW ... ;INSERT触发器:?INSERT触发器在INSERT语句执行之前或之后执行。注意:在INSERT触发器代码内,可引用一个名为NEW的虚拟表,访问被插入的行;在BEFORE INSERT触发器中,NEW中的值也可以被更新(允许更改被插入的值);对于AUTO_INCREMENT列,NEW在INSERT执行之前包含0,在INSERT执行之后包含新的自动生成值。举例:CREATE TRIGGER neworder AFTER INSERT ON orders FOR EACH ROW SELECT NEW.order_num;解析:?此代码创建一个名为neworder的触发器,它按照AFTER INSERT ON orders执行。此触发器必须按照AFTER INSERT执行,因为在BEFORE INSERT语句执行之前,新order_num还没有生成。对于orders的每次插入使用这个触发器将总是返回新的订单号。在插入一个新订单到orders表时,MySQL生成一个新订单号并保存到order_num中。触发器从NEW.order_num取得这个值并返回它。测试此触发器:INSERT INTO orders(order_date, cust_id) VALUES(Now(), 10001);解析:orders包含3个列。order_date和cust_id必须给出,order_num由MySQL自动生成,而现在order_num还自动被返回。注意:BEFORE或AFTER,BEFORE多用于数据验证和净化(目的是保证插入表中的数据确实是需要的数据)。DELETE触发器:?DELETE触发器在DELETE语句执行之前或之后执行。在DELETE触发器代码内,你可以引用一个名为OLD的虚拟表,访问被删除的行;OLD中的值全都是只读的,不能更新。举例:CREATE TRIGGER deleteorderBEFORE DELETE ON orders FOR EACH RAWBEGININSERT INTO archive_orders( order_num, order_date, cust_id) VALUES( OLD.order_num, OLD.order_date, OLD.cust_id); END;解析:在任意订单被删除前将执行此触发器。它使用一条INSERT语句将OLD中的值(要被删除的订单)保存到一个名为archive_orders的存档表中(为实际使用这个例子,你需要用与orders相同的列创建一个名为archive_orders的表)。使用BEFORE DELETE触发器的优点(相对于AFTER DELETE触发器来说)为,如果由于某种原因,订单不能存档,DELETE本身将被放弃。多语句触发器:触发器deleteorder使用BEGIN和END语句标记触发器体。使用BEGIN END块的好处是触发器能容纳多条SQL语句(在BEGIN END块中一条挨着一条)。UPDATE触发器:?UPDATE触发器在UPDATE语句执行之前或之后执行。在UPDATE触发器代码中,你可以引用一个名为OLD的虚拟表访问以前(UPDATE语句前)的值,引用一个名为NEW的虚拟表访问新更新的值;在BEFORE UPDATE触发器中,NEW中的值可能也被更新(允许更改将要用于UPDATE语句中的值);OLD中的值全都是只读的,不能更新。举例:CREATE TRIGGER updatevendorBEFORE UPDATE vendorsFOR EACH ROW SET NEW.vend_state = Upper(NEW.vend_state);解析:?任何数据净化都需要在UPDATE语句之前进行,就像这个例子中一样。每次更新一个行时,NEW.vend_state中的值(将用来更新表行的值)都用Upper(NEW.vend_state)替换。删除触发器:关键字:DROP语法格式:DROP TRIGGER 触发器名;举例:DROP TRIGGER newproduct;注意:触发器不能更新或覆盖。为了修改一个触发器,必须先删除它,然后再重新创建。应用场景:每当增加一个顾客到某个数据库表时,都检查其电话号码格式是否正确,州的缩写是否为大写;每当订购一个产品时,都从库存数量中减去订购的数量;无论何时删除一行,都在某个存档表中保留一个副本。以上三个共同之处在于需要在某个表发生更改时自动处理。注意:与其他DBMS相比,MySQL 5中支持的触发器相当初级。创建触发器可能需要特殊的安全访问权限,但是,触发器的执行是自动的。如果INSERT、UPDATE或DELETE语句能够执行,则相关的触发器也能执行。应该用触发器来保证数据的一致性(大小写、格式等)。在触发器中执行这种类型的处理的优点是它总是进行这种处理,而且是透明地进行,与客户机应用无关。触发器的一种非常有意义的使用是创建审计跟踪。使用触发器,把更改(如果需要,甚至还有之前和之后的状态)记录到另一个表非常容易。MySQL触发器中不支持CALL语句。这表示不能从触发器内调用存储过程。所需的存储过程代码需要复制到触发器内。6、事务处理MySQL支持几种基本的数据库引擎。MyISAM和InnoDB是两种最常使用的引擎。InnoDB引擎支持明确的事务处理管理,而MyISAM引擎不支持。事务处理(transaction processing)是一种机制,用来管理必须成批执行的MySQL操作,以保证数据库不包含不完整的操作结果。利用事务处理,可以保证一组操作不会中途停止,它们或者作为整体执行,或者完全不执行(除非明确指示)。如果没有错误发生,整组语句提交给(写到)数据库表。如果发生错误,则进行回退(撤销)以恢复数据库到某个已知且安全的状态。它保证成批的MySQL操作要么完全执行,要么完全不执行,以此来维护数据库的完整性。关键词汇:事务(transaction)指一组SQL语句;回退(rollback)指撤销指定SQL语句的过程;提交(commit)指将未存储的SQL语句结果写入数据库表;保留点(savepoint)指事务处理中设置的临时占位符(place-holder),你可以对它发布回退(与回退整个事务处理不同)。步骤:1、开启事务start transaction;2、查询事务的隔离级别select @@transaction_isolation ;MySQL下默认的隔离方式为?repeatable-read隔离性有隔离级别(4个)读未提交:read uncommitted读已提交:read committed可重复读:repeatable read串行化:serializable3、设置隔离级别set session transaction isolation level read committed;set session|global transaction isolation level 隔离级别;4、操作回滚rollback5、提交事务commit;控制事务处理:事务开始语句:START TRANSACTION使用ROLLBACK:MySQL的ROLLBACK命令用来回退(撤销)MySQL语句举例:SELECT * FROM ordertotals;START TRANSACTION;DELETE FROM ordertotals;SELECT * FROM ordertotals;ROLLBACK;SELECT * FROM ordertotals;解析:首先执行一条SELECT以显示该表不为空。然后开始一个事务处理,用一条DELETE语句删除ordertotals中的所有行。另一条SELECT语句验证ordertotals确实为空。这时用一条ROLLBACK语句回退START TRANSACTION之后的所有语句。ROLLBACK只能在一个事务处理内使用(在执行一条START TRANSACTION命令之后)。最后一条SELECT语句显示该表不为空。注意:事务处理用来管理INSERT、UPDATE和DELETE语句。但不能回退SELECT语句、不能回退CREATE或DROP操作。使用COMMIT:一般的MySQL语句都是直接针对数据库表执行和编写的。这就是所谓的隐含提交(implicit commit),即提交(写或保存)操作是自动进行的。 但在事务处理块中,提交不会隐含地进行。为进行明确的提交,使用COMMIT语句:COMMIT;举例:START TRANSACTION;DELETE FROM orderitems WHERE order_num = 20010;DELETE FROM orders WHERE order_num = 20010;COMMIT;解析:例子中,从系统中完全删除订单20010。因为涉及更新两个数据库表orders和orderitems,所以使用事务处理块来保证订单不被部分删除。最后的COMMIT语句仅在不出错时写出更改。如果第一条DELETE起作用,但第二条失败,则DELETE不会提交(实际上,它是被自动撤销的)。隐含事务关闭:当COMMIT或ROLLBACK语句执行后,事务会自动关闭(将来的更改会隐含提交)。更改默认的提交行为:?默认的MySQL行为是自动提交所有更改。修改MySQL不自动提交更改语句:SET autocommit=0;不管有没有COMMIT语句,autocommit标志决定是否自动提交更改,且autocommit标志是针对每个连接而不是服务器的。设置autocommit为0(假)指示MySQL不自动提交更改(直到autocommit被设置为真为止)。使用保留点:保留点:为了支持回退部分事务处理,必须能在事务处理块中合适的位置放置占位符。创建保留点语句:SAVEPOINT 保留点名;注意:每个保留点都取标识它的唯一名字,以便在回退时,MySQL知道要回退到何处。例如:SAVEPOINT delete1;回退到保留点语句:ROLLBACK TO 保留点名;例如:ROLLBACK TO delete1;保留点越多越好:可以在MySQL代码中设置任意多的保留点,越多越好。因为保留点越多,你就越能按自己的意愿灵活地进行回退。释放保留点:保留点在事务处理完成(执行一条ROLLBACK或COMMIT)后自动释放。自MySQL 5以来,也可以用RELEASE SAVEPOINT明确地释放保留点。7、权限管理1)创建用户create user ‘用户名’ @ ‘localhost’ idenified by ‘密码’;create user 'HHXF'@'localhost' identified by '123456';注意:需要在管理员root权限进行创建2)授予权限用户授权指令:grantgrant all privileges on . to 'Alascanfu'@'%' identified by '123456' with grant option;参数说明:all privileges: 表示将所有权限授予给指定用户。也可指定具体的权限,如:SELECT、CREATE、DROP等on:表示授予的权限对于哪些数据库中的数据表有效。to:表示的是授予给哪个指定用户以及可以登录的ip地址 格式:”用户名”@”登录IP或域名”。%表示没有限制,在任何主机都可以登录。identified by:指定用户的登录密码with grant option:表示允许用户将自己的权限授权给其它用户刷新当前权限:flush privileges取消指定用户的权限:revoke all on . from 'Alascanfu'@'localhost';删除指定用户:drop user'Alascanfu'@'%';
2024年05月07日
101 阅读
0 评论
0 点赞
2024-05-07
软路由硬件性能及推荐网卡芯片
软路由系统带机数量,是基于CPU本身性能,来判断的单线程CPU-代表型号 P4可以带 50-150台左右双线程CPU-代表型号 E6500可以带100-250台左右4线程CPU-代表型号 intel i3 530可以带300-600台左右8线程CPU-代表志强E3-1230和intel_I7可以带700-1500台左右注意:D525工控机是双核四线程能带250左右;但是1037u的工控机也是双核心的CPU,带机数量的话,就比D525高些以上带机数量是基于一般环境的判断,比如:10M-200M带宽的,当大带宽,大连接数的时候就需要适当减少带机量的注意:CPU的本身性能,当CPU的性能越好,带机数量就会越多网卡芯片:对INTEL平台的硬件支持比较好,在这里推荐几款主流的供大家挑选百兆:8139、8169千兆:82583V、82546EB、82574L 、I350-t4(光口)、82580(光口)pro/10009404pt万兆:82599ES(光口)注意:一些软路由采用的七层流控技术,比传统流控更加精准,精准的识别也会对CPU要求更高一点。以上的服务器推荐配置,请按照您的实际环境灵活参考,建议不要使用配置太差的机器,以免无法体验以后增加的创新功能
2024年05月07日
729 阅读
0 评论
1 点赞
2024-05-07
各厂商服务器存储默认登录信息
1、华为服务器:管理默认IP:192.168.2.100/24默认用户名密码:V3机器:root/Huawei12#$V5机器:Administrator/Admin@90002、IBM X系列:管理默认IP:192.168.70.125/24默认用户名密码:USERID/PASSW0RD (0是数字0);IBM RD系列:管理默认IP:192.168.70.125/24默认用户名密码:USERID/PASSW0RD (0是数字0) 或者lenovo/len0v0 (0是数字0);3、IBM P小型机:管理默认IP:192.168.2.147/3.147默认用户名密码:admin/admin;4、联想ThinkServer RQ940:管理默认IP:192.168.0.120默认用户名密码:admin/admin;5、联想RD350:管理默认IP:192.168.70.125默认用户名密码:USERID/PASSW0RD (0是数字0);6、联想SR550:管理默认IP:192.168.70.125/24默认用户名密码:USERID/PASSW0RD (0是数字0);7、H3C服务器:管理默认IP:192.168.1.2/24默认用户名密码:admin/Password@_;8、HP管理ILO:管理默认IP:无默认用户名密码:Administrator/password;9、DELL服务器IDRAC:管理默认IP:192.168.0.120默认用户名密码: root/calvin;10、HDS 2100存储:默认用户名密码:system/manager;0控:绿色区192.168.0.16(此口地址也是默认地址,用户没有修改)黄色区10.61.59.10 (此口上面有一个透明塑料盖子封上了,此口的ip地址不能更改);1控:绿色区192.168.0.17(此口地址也是默认地址,用户没有修改)黄色区10.0.0.17 (此口上面有一个透明塑料盖子封上了,此口的ip地址不能更改);网页登录:http://127.0.0.1:23015/StorageNavigatorModular/或者:http://<x.x.x.x>:23015/StorageNavigatorModular/Login11、EMC vnx5300:管理默认IP:SPA:1.1.1.1SPB:1.1.1.2维护默认IP:SPA:128.221.1.250SPB:128.221.1.251255.255.255.248默认用户名密码:admin/password12、EMC VNX5700:管理默认IP:1.1.1.1/1.1.1.2默认用户名密码:sysadmin/sysadmin13、宏杉存储MS系列:管理默认IP:192.168.0.210/220默认用户名密码:admin/admin14、HP3PARManagementConsole:管理默认IP:Ip:192.168.100.100User:3paradmPassword:3pardata3paradm/3parInServ15、IBM V5030 T口:管理默认IP:192.168.0.1superuser/passw0rd16、IBM V7000:管理默认IP:192.168.128.101/24192.168.128.102/24superuser/passw0rd (0是数字0)17、DS4700管理默认IP:port1 A控:192.168.128.101/24port1 B控:192.168.128.102/24port2 A控:192.168.129.101/24port2 B控:192.168.129.101/2418、IBM DS5020存储:管理默认IP:192.168.128.101/102账号shellUsr密码wy3oo&w4微码为07.70以下清密码命令;clearSYMbolPassword或者symbolPwdReset微码为7.70及以上:spriMenuPwdReset对于微码在07.10以上的DS4000/DS5000,用户名是“shellUsr”,密码是“wy3oo&w4”(大小写敏感,密码实际上是在键盘上用户名字符左上角的字符)19、浪潮管理口:IPMI默认 IP 为: 192.168.1.1默认用户/密码:admin/admin浪潮AS5300/5500管理软件登录用户名默认,密码为root浏览器登录用户名默认,密码为空20、浪潮AS5600默认 IP 为 :192.168.1.1浏览器登录默认用户名:superuser 密码:passw0rd (0是数字0)21、dell 管理口 idrac:默认IP:192.168.0.120默认用户与密码:root/calvin22、爱数一体机vx1210em1网卡默认IP为:192.168.0.253管理口默认IP:192.168.2.100默认用户与密码:root/Huawei12#$23、brocade 博科交换机默认IP:10.77.77.77通过telnet方式登录255.255.255.0默认用户与密码:admin/password最高权限 root/fibranne(恢复出厂密码)串口登录,恢复出厂密码命令:passwddefault (root用户下)24、常见服务器存储默认信息(作为补充):
2024年05月07日
624 阅读
0 评论
0 点赞
2024-05-07
苹果CMS系统V10API接口说明
api接口仅供提供数据,可以直接在苹果CMS后台联盟采集中加入-并提供给他人采集。视频接口同时支持老板xml格式的数据,增加参数 &at=xml即可。{callout color="#f0ad4e"}1,视频列表地址http://域名/api.php/provide/vod/?ac=list2,视频详情地址http://域名/api.php/provide/vod/?ac=detail3,文章列表地址http://域名/api.php/provide/art/?ac=list4,文章详情地址http://域名/api.php/provide/art/?ac=detail{/callout}列表数据格式:{callout color="#f0ad4e"}{"code":1,"msg":"数据列表","page":1,"pagecount":1,"limit":"20","total":15,"list":[{"vod_id":21,"vod_name":"情剑","type_id":6,"type_name":"动作片","vod_en":"qingjian","vod_time":"2018-03-29 20:50:19","vod_remarks":"超清","vod_play_from":"youku"},{"vod_id":20,"vod_name":"暴力街区","type_id":6,"type_name":"动作片","vod_en":"baolijiequ","vod_time":"2018-03-27 21:17:52","vod_remarks":"超清","vod_play_from":"youku"},{"vod_id":19,"vod_name":"超凡蜘蛛侠2","type_id":6,"type_name":"动作片","vod_en":"chaofanzhizhuxia2","vod_time":"2018-03-27 21:17:51","vod_remarks":"高清","vod_play_from":"youku"},{"vod_id":18,"vod_name":"木星上行","type_id":6,"type_name":"动作片","vod_en":"muxingshangxing","vod_time":"2018-03-27 21:17:37","vod_remarks":"高清","vod_play_from":"youku"},{"vod_id":15,"vod_name":"英雄本色2018","type_id":6,"type_name":"动作片","vod_en":"yingxiongbense2018","vod_time":"2018-03-22 16:09:17","vod_remarks":"高清","vod_play_from":"qiyi,sinahd"},{"vod_id":13,"vod_name":"飘香剑雨","type_id":8,"type_name":"爱情片","vod_en":"piaoxiangjianyu","vod_time":"2018-03-21 20:37:52","vod_remarks":"全36集","vod_play_from":"youku,qiyi"},{"vod_id":14,"vod_name":"怪谈之魅影惊魂","type_id":8,"type_name":"爱情片","vod_en":"guaitanzhimeiyingjinghun","vod_time":"2018-03-20 21:32:27","vod_remarks":"高清","vod_play_from":"qiyi"},{"vod_id":12,"vod_name":"桃李劫","type_id":8,"type_name":"爱情片","vod_en":"taolijie","vod_time":"2018-03-20 21:32:26","vod_remarks":"高清","vod_play_from":"mgtv,pptv"},{"vod_id":9,"vod_name":"胡杨的夏天","type_id":7,"type_name":"喜剧片","vod_en":"huyangdexiatian","vod_time":"2018-03-20 21:32:00","vod_remarks":"高清","vod_play_from":"27pan,mgtv,qiyi,qq,youku"},{"vod_id":10,"vod_name":"宝贝特攻","type_id":7,"type_name":"喜剧片","vod_en":"baobeitegong","vod_time":"2018-03-20 21:32:00","vod_remarks":"高清","vod_play_from":"mgtv,qiyi,qq,youku"},{"vod_id":11,"vod_name":"午夜劫案","type_id":7,"type_name":"喜剧片","vod_en":"wuyejiean","vod_time":"2018-03-20 21:32:00","vod_remarks":"高清","vod_play_from":"qiyi"},{"vod_id":6,"vod_name":"密战","type_id":6,"type_name":"动作片","vod_en":"mizhan","vod_time":"2018-03-20 21:31:41","vod_remarks":"全30集","vod_play_from":"mgtv,youku,27pan,qiyi,qq,pptv"},{"vod_id":7,"vod_name":"黑道老师","type_id":6,"type_name":"动作片","vod_en":"heidaolaoshi","vod_time":"2018-03-20 21:31:41","vod_remarks":"高清","vod_play_from":"sohu,pptv"},{"vod_id":8,"vod_name":"跃影江湖之森罗万象","type_id":6,"type_name":"动作片","vod_en":"yueyingjianghuzhisenluowanxiang","vod_time":"2018-03-20 21:31:41","vod_remarks":"高清","vod_play_from":"qq"},{"vod_id":4,"vod_name":"我的青春遇见你","type_id":13,"type_name":"国产剧","vod_en":"wodeqingchunyujianni","vod_time":"2018-03-20 19:26:54","vod_remarks":"56集全","vod_play_from":"youku,xigua"}],"class":[{"type_id":1,"type_name":"电影"},{"type_id":2,"type_name":"连续剧"},{"type_id":3,"type_name":"综艺"},{"type_id":4,"type_name":"动漫"},{"type_id":5,"type_name":"资讯"},{"type_id":6,"type_name":"动作片"},{"type_id":7,"type_name":"喜剧片"},{"type_id":8,"type_name":"爱情片"},{"type_id":9,"type_name":"科幻片"},{"type_id":10,"type_name":"恐怖片"},{"type_id":11,"type_name":"剧情片"},{"type_id":12,"type_name":"战争片"},{"type_id":13,"type_name":"国产剧"},{"type_id":14,"type_name":"港台剧"},{"type_id":15,"type_name":"日韩剧"},{"type_id":16,"type_name":"欧美剧"},{"type_id":17,"type_name":"公告"},{"type_id":18,"type_name":"头条"}]}{/callout}列表接收参数:{callout color="#f0ad4e"}ac=listt=类别IDpg=页码wd=搜索关键字h=几小时内的数据{/callout}例如: http://域名/api.php/provide/vod/?ac=list&t=1&pg=5 分类ID为1的列表数据第5页内容数据格式:{callout color="#f0ad4e"}{"code":1,"msg":"数据列表","page":1,"pagecount":1,"limit":"20","total":1,"list":[{"vod_id":21,"vod_name":"情剑","type_id":6,"type_name":"动作片","vod_en":"qingjian","vod_time":"2018-03-29 20:50:19","vod_remarks":"超清","vod_play_from":"youku","vod_pic":"https://img1.doubanio.com/view/photo/s_ratio_poster/public/p2259384068.jpg","vod_area":"大陆","vod_lang":"国语","vod_year":"2018","vod_serial":"0","vod_actor":"谢霆锋,钟欣潼,乔振宇,伊能静,谭耀文,赵鸿飞,周莉","vod_director":"陈咏歌","vod_content":"一位手执名剑“长光”的年轻剑客(谢霆锋 饰)只为完成师父生前的遗愿——找到古代中原留下的九大旷世名剑,从北方蓬莱来到中原。而此前早已归顺朝廷的山东武林盟主、青萍剑客白三空(计春华 饰)利用与年轻剑客的比武诈死,成为朝廷埋藏在武林中的黑手。白三空的外孙方宝玉(乔振宇 饰)从小被外公禁止接触武功,然而为了替外公报仇,为了武林的正义,跟随“天下第一剑”紫衣候(谭耀文 饰)学武,誓要杀死蓬莱剑客。生命攸关的时刻,蓬莱剑客结识了黄河狂侠王巅之女珠儿(钟欣潼 饰),并且渐生情愫,方宝玉与紫衣候养女奔月(杨蕊 饰)两人也爱得难舍难分。青木堡少堡主木郎神君(赵鸿飞 饰)的朝廷锦衣卫身份终于暴露,朝廷意欲借武林中人控制武林,寻找罗雅古城宝藏的目的彻底呈现出来。 </p> 一场武林浩劫正在上演,每一个人的立场都真相大白。在纷争中发现对方竟是同母异父亲兄亲的蓬莱剑客和宝玉决定联手对付木郎神君,然而木郎神君已经炼成了混元神功,就在那千钧一发时刻,木郎神君死在了心爱的女人——脱尘郡主(伊能静 饰)的剑下,纷争也随之结束……</p> </p>","vod_play_url":"正片$http://v.youku.com/v_show/id_XMTM0NTczNDExMg==.html"}]}{/callout}内容接收参数:{callout color="#f0ad4e"}参数 ids=数据ID,多个ID逗号分割。t=类型IDpg=页码h=几小时内的数据{/callout}例如:http://域名/api.php/provide/vod/?ac=detail&ids=123,567获取ID为123和567的数据信息:http://域名/api.php/provide/vod/?ac=detail&h=24**24小时内更新数据信息
2024年05月07日
268 阅读
0 评论
0 点赞
2024-05-07
碧海威路由-解决蘑菇下载导致 ADSL 掉线
背景:经常有用户反馈(这种现象其实持续一两年了)自己的 ADSL 线路总是重拨,而且是被踢下线,没有规律,其实这种情况有一个共性,就是都在用蘑菇下载时候发生。导致碧海背锅。原因:蘑菇下载的某些行为或端口导致触发运营商踢用户下网。解决:建立一条虚拟链路(假线路),物理接口选一个 up 的网口,理论上 ip/子网任意,不懂的就照抄吧。链路探测一定要设置成关闭,否则系统会检测到这个线路不通。应用路由增加一条策略,将更新机 IP (子网是 32 代表就这一台,或者你用 IP 分组定义也可以)部分端口指向新增加的假线路上。注意不要抄错了,仔细点。将增加的这个应用路由规则置顶。原理:将不合法的端口或数据包扔掉(这个不就是扔到空线路上去吗?)
2024年05月07日
194 阅读
0 评论
0 点赞
2024-05-07
群晖命令行方式拉去Docker项目教程
教程开始:A:开启SSH登录 :打开群晖系统,进入“控制面板”→终端机和SNMP→打勾SSH,设置端口号,默认为22;这里我设置成B:新建SSH会话 :打开Xshell软件,新建会话属性,点击“连接”,输入主机(即群晖局域网ip:192.168.1.XXX)、端口号,点击“用户身份验证”,输入群晖管理员登录账号和密码;登录群晖终端环境 :点击会话下方“连接”按钮进入命令窗口,也可以点击“确认”保存到左侧,下次双击直接登录;登陆后提示提示如下Connecting to 192.168.1.XXX:端口号... Connection established. To escape to local shell, press 'Ctrl+Alt+]'. admin@DiskStation:~$C:获取高级权限 :命令窗口中输入> sudo -iD:再次输入群晖管理员密码,> Password:E:输入的密码不会显示出来,输完直接回车,输错了也直接回车,再输入“sudo -i”重新输入一遍;查看已有镜像: 这里介绍几个要用到的命令docker images # 查看docker本地的镜像 docker search mysql # 搜索一个镜像,这里以搜索mysql为例 time docker pull nginx # 测试下载速度 docker pull mysql:5.7 # 下载mysql:5.7镜像 docker rmi XXXX # 删除镜像XXXX,这里XXX为镜像ID,输入docker images可查看已下载的镜像和对应的ID docker rmi $(docker images -q) # 删除全部镜像 synoservice --restart pkgctl-Docker # 重启docker这里对于某些镜像选择lastet版本还是其他版本我暂时还不知道怎么弄,有知道的小伙伴可以在下方给我留言哦。F:下载镜像 :这里以下载docker注册表中的oldiy/docker-webssh2为例root@DiskStation:~# docker pull oldiy/docker-webssh2 Using default tag: latest latest: Pulling from oldiy/docker-webssh2 88286f41530e: Pull complete d0e8a23136b3: Pull complete 5ad5b12a980e: Pull complete 81a43fd8c11b: Pull complete Digest: sha256:f14e68f727fd9942f4fdbc02832c1910ee179ba20a99fc132a28e86583cc0e36 Status: Downloaded newer image for oldiy/docker-webssh2:latest会有四个进度条同时下载,下载结束后会出现Digest: sha256:f14e68f727fd9942f4fdbc02832c1910ee179ba20a99fc132a28e86583cc0e36 Status: Downloaded newer image for oldiy/docker-webssh2:latest查看下载镜像 这样就下载完成了,再在命令行中输入docker images root@DiskStation:~# docker images REPOSITORY TAG IMAGE ID CREATED SIZE oldiy/docker-webssh2 latest fd4b4b08d165 12 months ago 127MB然后在网页中查看群晖docker中的镜像,通过ssh下载好的镜像这里就出现啦,大家就可以继续后续的操作了。
2024年05月07日
172 阅读
0 评论
0 点赞
2024-05-07
技嘉 ga-6pxsvt 主板接线
暂无简介
2024年05月07日
251 阅读
0 评论
1 点赞
2024-05-07
碧海威路由配置案例教程解析
网吧环境一、联通 100M 2条 + 电信 10M 1条 + 移动 100M 1条配置方案:应用路由:联通带宽较大,以双线联通做主要线路,电信 10M 只跑基本的游戏类流量, 移动以移动路由表分流外加 P2P 下载流量。流控部分:简单一键流控即可(对模板配置不满意的同学自行微调策略){dotted startColor="#ff6c6c" endColor="#1989fa"/}网吧环境二、联通 100M 1条 + 电信 30M 1条配置方案:应用路由:联通做主线路,联通承担大部分流量,电信的游戏及聊天和浏览走电信出口。流控部分:简单一键流控即可(对模板配置不满意的同学自行微调策略)分流协议部分,可以自行根据实际环境进行增减,比如可以对 WEB 视频不分流到联通。{dotted startColor="#ff6c6c" endColor="#1989fa"/}网吧环境三、重庆带有电信专网(走视频)和联通线路的混合接入配置方案:应用路由:电信主光纤做主线路,电信专网根据电信提供的路由表去做分流,联通流量根据联通的路由表出口策略。核心:将电信给定的专网 IP 分流至移动专网线路流控部分:简单一键流控即可(对模板配置不满意的同学自行微调策略)分流协议部分,可以自行根据实际环境进行增减,比如可以对 WEB 视频不分流到联通{dotted startColor="#ff6c6c" endColor="#1989fa"/}网吧环境四、联通 100M 4条 ADSL(上行 4M)配置方案:应用路由:四条 ADSL 直接做负载均衡。流控部分:全部线路一键键流控即可(对模板配置不满意的同学自行微调策略)
2024年05月07日
160 阅读
0 评论
0 点赞
2024-05-07
碧海威路由封锁指定外网IP的新方法
(适用版本:所有路由版)修订:2014-05-21案例: 如果我们不允许内网的全部或部分IP禁止访问外网指定IP 或IP段:可以在流控盒子里进行配置,方法如下:第一步:进入菜单 流控盒子---流控对象---IP分组,定义内网IP和外网IP段(说明:IP分组用于定义内网IP或外网IP或IP段的集合,利用分组来管控更加简单和方便)A:用户中定义一个IP地址 的方法:B:用户中定义一个子网网段的方法:C:用户中定义一段IP的方法:D:定义一个用户分组:E:定义的多个用户加入到一个用户分组:第二步 : 流控盒子--整体流控里设置内网与外网流量的阻断(封锁指定外网IP)第三步:至关重要!! 将此设置行,移到所有策略配置行顶端,方能生效!
2024年05月07日
141 阅读
0 评论
0 点赞
2024-05-07
SQL 2008 R2 Express(MSSQL SQL Server)开启远程访问的详细方法
Microsoft SQL 2008 R2 Express(MSSQL SQL Server) 默认只能在本机访问,远程要访问的话需要做如下:1、启用TCP/IP和Named Pipes:进入Sql Server配置管理器,在网络配置->SqlExpress的协议中启用SQL SERVER启用协议2、设置TCP/IP的协议端口号为1433,默认是空的。开启SQL SERVER端口3、将SQL Server Browser service 启用,默认是禁止的,具体原因参见SQL Server : Browser服务是干什么的。启用SQL Server Browser service 服务4、登陆改为混合模式:以windows方式连接并进入数据库,右键点击你的数据服务器->属性->安全性>选中Sql server 和windows 验证方式。改为SQL登录为混合模式5、打开远程连接功能SQL SERVER打开远程连接6、重启服务后就可以通过远程访问了。
2024年05月07日
81 阅读
0 评论
0 点赞
2024-05-07
Stem登录所需端口域名
Steam 所需端口为了让 Steam 正常运作,您需要在路由器或防火墙中打开以下端口:登录 Steam 并下载内容:{callout color="#f0ad4e"}HTTP(TCP 远程端口 80)和 HTTPS(443)UDP 远程端口 27015 至 27030TCP 远程端口 27015 至 27030{/callout}Steam 客户端{callout color="#f0ad3e"}UDP 远程端口 27000 至 27100:游戏流量UDP 本地端口 27031 和 27036:远程畅玩TCP 本地端口 27036:远程畅玩UDP 远程端口 4380{/callout}专用或侦听服务器{callout color="#f0ad1e"}TCP 本地端口 27015(默认):SRCDS Rcon 端口UDP 本地端口 27015(默认):游戏流量{/callout}Steamworks 对等网络及 Steam 语音聊天{callout color="#f3ad1e"}UDP 远程端口 3478UDP 远程端口 4379UDP 远程端口 4380{/callout}对于通用 Steam HTTP/HTTPS 请求,您的代理应该允许以下域名:{callout color="#f3ad1e"}steampowered.comsteamcommunity.comsteamgames.comsteamusercontent.comsteamcontent.comsteamstatic.comakamaihd.net{/callout}多数非 web 流量通常使用 UDP,但也可能使用 TCP。 相应的 IP 地址将都来自 Valve 网络(AS32590)。
2024年05月07日
214 阅读
0 评论
0 点赞
2024-05-07
解决Server 2012/2016/2019的任务管理器中不显示硬盘
在装的服务器系统任务管理器里面看不到硬盘的读写情况,有时候非常不方便,指需要一个命令即可显示,如果大家有遇到此类问题,不妨试试操作方法1.Win+R 打开CMD(不是管理员的话请以管理员身份打开)2.输入以下命令diskperf -y(已测使用该命令不会导致运行中出问题,所以请放心大胆使用)结束
2024年05月07日
751 阅读
0 评论
0 点赞
2024-05-07
网络常见的几种协议
网络协议就是网络之间沟通、交流的桥梁,只有相同网络协议的计算机才能进行信息的沟通与交流。以下是几种常用的网吧的网络协议:1、IPX/SPX(InternetworkPacketExchange/SequentialPacketExchange)互连网包交换/顺序包交换它是由Novell提出的用于客户/服务器相连的网络协议。使用IPX/SPX协议能运行通常需要NetBEUI支持的程序,通过IPX/SPX协议可以跨过路由器访问其他网络。2、NetBEUI(NetBIOSEnhancedUserInterface)网络基本输入输出系统扩展用户接口NetBEUI协议是IBM于1985年提出。NetBEUI主要为20到200个工作站的小型局域网设计的,用于NetBEUI、LanMan网、WindowsForWorkgroUPS及WindowsNT网。NetBEUI是一个紧凑、快速的协议,但由于NetBEUI没有路由能力,即不能从一个局域网经网吧路由器到另一个局域网,已不能适应较大的网络。如果需要路由到其他局域网,则必须安装TCP/IP或IPX/SPX协议。3、HDLC(High-LevelDataLinkControl)高层数据链路协议它是一组用于在网络结点间传送数据的协议。在HDLC中,数据被组成一个个的单元(称为帧)通过网络发送,并由接收方确认收到。HDLC协议也管理数据流和数据发送的间隔时间。HDLC是在数据链路层中最广泛最使用的协议之一。现在作为ISO的标准,HDLC是基于IBM的SDLC协议的,SDLC被广泛用于IBM的大型机环境之中。在HDLC中,属于SDLC的被称为通响应模式(NRM)。在通常响应模式中,基站(通常是大型机)发送数据给本地或远程的二级站。不同类型的HDLC被用于使用X.25协议的网络和帧中继网络,这种协议可以在局域网或广域网中使用,无论此网是公共的还是私人的。4、HTTP1.1(HypertextTransferProtocolVertion1.1)超文本传输协议-版本1.1它是用来在Internet上传送超文本的传送协议。它是运行在TCP/IP协议族之上的HTTP应用协议,它可以使浏览器更加高效,使网络传输减少。任何服务器除了包括HTML文件以外,还有一个HTTP驻留程序,用于响应用用户请求。您的浏览器是HTTP客户,向服务器发送请求,当浏览器中输入了一个开始文件或点击了一个超级链接时,浏览器就向服务器发送了HTTP请求,此请求被送往由IP地址指定的URL。驻留程序接收到请求,在进行必要的操作后回送所要求的文件。5、MIME(Multi-PurposeInternetMailExtensions)多功能Internet邮件扩展MIME是扩展SMTP协议,是1991年NathanBorenstein向IETF提出。在传输字符数据的同时,允许用户传送另外的文件类型,如声音,图像和应用程序,并将其压缩在MIME附件中。因此,新的文件类型也被作为新的被支持的IP文件类型。6、ICMP(InternetControlMessageProtocol)Internet控制信息协议它是一个在主机和网关之间消息控制和差错报告协议。ICMP使用IP数据报,但消息由TCP/IP软件处理,对于应用程序使用者是不可见的。在被称为Catenet的系统中,IP协议被用作主机到主机的数据报服务。网络连接设备称为网关。这些网关通过网关到网关协议(GGP)相互交换用于控制的信息。通常,赡养或目的主机将和源主机通信,例如,为报告在数据报过程中的错误。为了这个目的才使用了ICMP,它使用IP做于底层支持,好象它是一个高层协议,而实际上它是IP的一部分,必须由其它IP模块实现。ICMP消息在以下几种情况下发送:当数据报不能到达目的地时,当网关的已经失去缓存功能,当网关能够引导主机在更短路由上发送。IP并非设计为设计为绝对可靠,这个协议的目的是为了当网络出现问题的时候返回控制信息,而不是使IP协议变得绝对可靠,并不保证数据报或控制信息能够返回。一些数据报仍将在没有任何报告的情况下丢失。
2024年05月07日
135 阅读
0 评论
0 点赞
2024-05-07
常见蓝屏代码含义和解决方案(仅供参考)-未整理
建议使用Ctrl+F 快速定位1、0x0000000A:IRQL_NOT_LESS_OR_EQUAL错误分析:主要是由问题的驱动程序、有缺陷或不兼容的硬件与软件造成的. 从技术角度讲. 表明在内核模式中存在以太高的进程内部请求级别(IRQL)访问其没有权限访问的内存地址.解决方案:(1).新硬件检查 首先, 应该检查新硬件是否插牢, 这个被许多人忽视的问题往往会引发许多莫名其妙的故障. 如果确认没有问题, 将其拔下, 然后换个插槽试试, 并安装最新的驱动程序. 同时还应对照微软网站的硬件兼容类别检查一下硬件是否与操作系统兼容. 如果你的硬件没有在表中, 那么就得到硬件厂商网站进行查询, 或者拨打他们的咨询电话. Windows XP的硬件兼容列表 Windows 2K的硬件兼容类别 (2).检查新驱动和新服务 如果刚安装完某个硬件的新驱动, 或安装了某个软件, 而它又在系统服务中添加了相应项目(比如:杀毒软件、CPU降温软件、防火墙软件等), 在重启或使用中出现了蓝屏故障, 请到安全模式来卸载或禁用它们. (3).检查BIOS和硬件兼容性 对于新装的电脑经常出现蓝屏问题, 应该检查并升级BIOS到最新版本, 同时关闭其中的内存相关项, 比如:缓存和映射. 另外, 还应该对照微软的硬件兼容列表检查自己的硬件. 还有就是, 如果主板BIOS无法支持大容量硬盘也会导致蓝屏, 需要对其进行升级. 小提示: BIOS的缓存和映射项 Video BIOS Shadowing (视频BIOS映射) Shadowing address ranges(映射地址列) System BIOS Cacheable(系统BIOS缓冲) Video BIOS Cacheable(视频BIOS缓冲) Video RAM Cacheable(视频内存缓冲) (4).最后一次正确配置 一般情况下, 蓝屏都出现于更新了硬件驱动或新加硬件并安装其驱动后, 这时Windows 2K/XP提供的"最后一次正确配置"就是解决蓝屏的快捷方式. 重启系统, 在出现启动菜单时按下F8键就会出现高级启动选项菜单, 接着选择"最后一次正确配置". (5).安装最新的系统补丁和Service Pack 有些蓝屏是Windows本身存在缺陷造成的, 应此可通过安装最新的系统补丁和Service Pack来解决. 2、0x00000012:TRAP_CAUSE_UNKNOWN错误分析:如果遇到这个错误信息, 那么很不幸, 因为KeBudCheck分析的结果是错误原因未知.解决方案:既然微软都帮不上忙, 就得靠自己了, 请仔细回想这个错误是什么时候出现的; 第一次发生时你对系统做了哪些操作; 发生时正在进行什么操作. 从这些信息中找出可能的原因, 从而选择相应解决方案尝试排除.3、0x0000001A:MEMORY_MANAGEMENT错误分析:这个内存管理错误往往是由硬件引起的, 比如: 新安装的硬件、内存本身有问题等.解决方案:如果是在安装Windows时出现, 有可能是由于你的电脑达不到安装Windows的最小内存和磁盘要求.4、0x0000001E:KMODE_EXCEPTION_NOT_HANDLED错误分析:Windows内核检查到一个非法或者未知的进程指令, 这个停机码一般是由问题的内存或是与前面0x0000000A相似的原因造成的.解决方案:(1)硬件兼容有问题:请对照前面提到的最新硬件兼容性列表, 查看所有硬件是否包含在该列表中.(2)有问题的设备驱动、系统服务或内存冲突和中断冲突: 如果在蓝屏信息中出现了驱动程序的名字, 请试着在安装模式或者故障恢复控制台中禁用或删除驱动程序, 并禁用所有刚安装的驱动和软件. 如果错误出现在系统启动过程中, 请进入安全模式, 将蓝屏信息中所标明的文件重命名或者删除.(3)如果错误信息中明确指出Win32K.sys: 很有可能是第三方远程控制软件造成的, 需要从故障恢复控制台中将对该软件的服务关闭.(4)在安装Windows后第一次重启时出现:最大嫌疑可能时系统分区的磁盘空间不足或BIOS兼容有问题.(5)如果是在关闭某个软件时出现的:很有可能时软件本省存在设计缺陷, 请升级或卸载它.5、0x00000023:FAT_FILE_SYSTEM/ 0x00000024:NTFS_FILE_SYSTEM错误分析:0x00000023通常发生在读写FAT16或者FAT32文件系统的系统分区时, 而0x00000024则是由于NTFS.sys文件出现错误(这个驱动文件的作用是容许系统读写使用NTFS文件系统的磁盘). 这两个蓝屏错误很有可能是磁盘本身存在物理损坏, 或是中断要求封包(IRP)损坏而导致的. 其他原因还包括:硬盘磁盘碎片过多; 文件读写操作过于频繁, 并且数据量非常达或者是由于一些磁盘镜像软件或杀毒软件引起的.解决方案:(1)首先打开命令行提示符, 运行"Chkdsk /r"(注:不是CHKDISK, 感觉象这个, 但是……)命令检查并修复硬盘错误, 如果报告存在怀道(Bad Track), 请使用硬盘厂商提供的检查工具进行检查和修复.(2)接着禁用所有即使扫描文件的软件, 比如:杀毒软件、防火墙或备份工具.(3)右击C:\winnt\system32\drivers\fastfat.sys文件并选择"属性", 查看其版本是否与当前系统所使用的Windows版本相符.(注:如果是XP, 应该是C:\windows\system32\drivers\fastfat.sys)(4)安装最新的主板驱动程序, 特别IDE驱动. 如果你的光驱、可移动存储器也提供有驱动程序, 最好将它们升级至最新版.6、0x00000027:RDR_FILE_SYSTEM错误分析:这个错误产生的原因很难判断, 不过Windows内存管理出了问题很可能会导致这个停机码的出现.解决方案:如果是内存管理的缘故, 通常增加内存会解决问题.7、0x0000002E:ATA_BUS_ERROR错误分析:系统内存存储器奇偶校验产生错误, 通常是因为有缺陷的内存(包括物理内存、二级缓存或者显卡显存)时设备驱动程序访问不存在的内存地址等原因引起的. 另外, 硬盘被病毒或者其他问题所损伤, 以出现这个停机码.解决方案:(1)检查病毒(2)使用"chkdsk /r"命令检查所有磁盘分区.(3)用Memtest86等内存测试软件检查内存.(4)检查硬件是否正确安装, 比如:是否牢固、金手指是否有污渍.8、0x00000035:NO_MORE_IRP_STACK_LOCATIONS错误分析:从字面上理解, 应该时驱动程序或某些软件出现堆栈问题. 其实这个故障的真正原因应该时驱动程序本省存在问题, 或是内存有质量问题.解决方案:请使用前面介绍的常规解决方案中与驱动程序和内存相关的方案进行排除.9、0x0000003F:NO_MORE_SYSTEM_PTES错误分析:一个与系统内存管理相关的错误, 比如:由于执行了大量的输入/输出操作, 造成内存管理出现问题: 有缺陷的驱动程序不正确地使用内存资源; 某个应用程序(比如:备份软件)被分配了大量的内核内存等.解决方案:卸载所有最新安装的软件(特别是哪些增强磁盘性能的应用程序和杀毒软件)和驱动程序.10、0x00000044:MULTIPLE_IRP_COMPLIETE_REQUESTS错误分析:通常是由硬件驱动程序引起的.解决方案:卸载最近安装的驱动程序. 这个故障很少出现, 目前已经知道的是, 在使用www.in-system.com/这家公司的某些软件时会出现, 其中的罪魁就是Falstaff.sys文件.(作者难道不怕吃官司嘛, 把公司网址公布)11、0x00000050: PAGE_FAULT_IN_NONPAGED+AREA错误分析:有问题的内存(包括屋里内存、二级缓存、显存)、不兼容的软件(主要是远程控制和杀毒软件)、损坏的NTFS卷以及有问题的硬件(比如: PCI插卡本身已损坏)等都会引发这个错误.解决方案:请使用前面介绍的常规解决方案中与内存、软件、硬件、硬盘等相关的方案进行排除.12、0x00000051:REGISTRY_ERROR错误分析:这个停机码说明注册表或系统配置管理器出现错误, 由于硬盘本身有物理损坏或文件系统存在问题, 从而造成在读取注册文件时出现输入/输出错误.解决方案:使用"chkdsk /r"检查并修复磁盘错误.13、0x00000058:FTDISK_INTERNAL_ERROR错误分析:说明在容错集的主驱动发生错误.解决方案:首先尝试重启电脑看是否能解决问题, 如果不行, 则尝试"最后一次正确配置"进行解决.14、0x0000005E:CRITICAL_SERVICE_FAILED错误分析:某个非常重要的系统服务启动识别造成的.解决方案:如果是在安装了某个新硬件后出新的, 可以先移除该硬件, 并通过网上列表检查它是否与Windows 2K/XP兼容, 接着启动电脑, 如果蓝屏还是出现, 请使用"最后一次正确配置"来启动Windows, 如果这样还是失败, 建议进行修复安装或是重装.15、0x0000006F:SESSION3_INITIALIZATION-FAILED错误分析:这个错误通常出现在Windows启动时, 一般是由有问题的驱动程序或损坏的系统文件引起的.解决方案:建议使用Windows安装光盘对系统进行修复安装.16、0x00000076:ROCESS_HAS_LOCKED_PAGES错误分析:通常是因为某个驱动程序在完成了一次输入/输出操作后, 没有正确释放所占有的内存解决方案:(1)点击开始-->运行:regedt32, 找到[HKLM\SYSTEM\Currentcontrol set\control\session manager\memory management], 在右侧新建双字节值"TrackLockedPages", 值为1. 这样Windows便会在错误再次出现时跟踪到是哪个驱动程序的问题.(2)如果再次出现蓝屏, 那么错误信息会变成:STOP:0x0000000CB(0xY,0xY,0xY,0xY)DRIVER_LEFT_LOCKED_PAGES_IN_PROCESS其中第四个"0xY"会显示为问题驱动程序的名字, 接着对其进行更新或删除.第三步:进入注册表, 删除添加的"TrackLockedPages".17、0x00000077:KERNEL_STACK_INPAGE_ERROR错误分析:说明需要使用的内核数据没有在虚拟内存或物理内存中找到. 这个错误常常于是着磁盘有问题, 相应数据损坏或受到病毒侵蚀.解决方案:使用杀毒软件扫描系统; 使用"chkdsk /r"命令检查并修复磁盘错误, 如不行则使用磁盘厂商提供的工具检查修复.18、0x0000007A:KERNEL_DATA_INPAGE_ERROR错误分析:这个错误往往是虚拟内存中的内核数据无法读入内存造成的. 原因可能是虚拟内存页面文件中存在坏簇、病毒、磁盘控制器出错、内存有问题.解决方案:首先用升级为最新病毒库杀毒软件查杀病毒, 如果促无信息中还0xC000009C或0xC000016A代码, 那么表示是坏簇造成的, 并且系统的磁盘检测工具无法自动修复, 这时要进入"故障恢复控制台", 用"chkdsk /r"命令进行手动修复.19、0x0000007B:INACESSIBLE_BOOT_DEVICE错误分析:Windows在启动过程中无法访问系统分区或启动卷. 一般发生在更换主板后第一次启动时, 主要是因为新主板和旧主板的IDE控制器使用了不同芯片组造成的. 有时也可能是病毒或硬盘损伤所引起的.解决方案:一般只要用安装光盘启动电脑, 然后执行修复安装即可解决问题. 对于病毒则可使用DOS版的杀毒软件进行查杀(主战有kv2005DOS版下载). 如果是硬盘本身存在问题, 请将其安装到其他电脑中, 然后使用"chkdsk /r"来检查并修复磁盘错误.20、0x0000007E:SYSTEM_THREAD_EXCEPTION_NOT_HANDLED错误分析:系统进程产生错误, 但Windows错误处理器无法捕获. 其产生原因很多, 包括:硬件兼容性、有问题的驱动程序或系统服务、 或者是某些软件.解决方案:请使用"事件查看器"来获取更多的信息, 从中发现错误根源.(发现好像不是解决哦, 看来这里大家要自力更生了!)21、0x0000007F:UNEXPECTED_KERNEL_MOED_TRAP错误分析:一般是由于有问题的硬件(比如:内存)或某些软件引起的. 有时超频也会产生这个错误.解决方案:用检测软件(比如:Memtest86)检查内存, 如果进行了超频, 请取消超频. 将PCI硬件插卡从主板插槽拔下来, 或更换插槽. 另外, 有些主板(比如:nForce2主板)在进行超频后, 南桥芯片过热也会导致蓝屏, 此时为该芯片单独增加散热片往往可以有效解决问题.22、0x00000080:NMI_HARDWARE_FAILURE错误分析:通常是有硬件引起的.(似乎蓝屏与硬件错误有不解之缘)解决方案:如果最近安装了新硬件, 请将其移除, 然后试试更换插槽和安装最新的驱动程序, 如果升级了驱动程序, 请恢复后原来的版本; 检查内存金手指是否有污染和损坏; 扫描病毒; 运行"chkdsk /r"检查并修复磁盘错误; 检查所有硬件插卡已经插牢. 如果以上尝试都无效果, 就得找专业的电脑维修公司请求帮助了.23、0x0000008E:KERNEL_MODE_EXCEPTION_NOT_HANDLED错误分析:内核级应用程序产生了错误, 但Windows错误处理器没有捕获. 通常是硬件兼容性错误.解决方案:升级驱动程序或升级BIOS.24、0x0000009C:MACHINE_CHECK_EXCEPTION错误分析:通常是硬件引起的. 一般是因为超频或是硬件存在问题(内存、CPU、总线、电源).解决方案:如果进行了超频, 请降会CPU原来频率, 检查硬件.25、0x0000009F:RIVER_POWER_STATE_FAILURE错误分析:往往与电源有关系, 常常发生在与电源相关的操作, 比如:关机、待机或休睡.解决方案:重装系统, 如果不能解决, 请更换电源.26、0x000000A5:ACPI_BIOS_ERROR错误分析:通常是因为主板BIOS不能全面支持ACPI规范.解决方案:如果没有相应BIOS升级, 那么可在安装Windows 2K/XP时, 当出现"press F6 if you need to install a third-party SCSI or RAID driver"提示时, 按下F7键, 这样Windows便会自动禁止安装ACPI HAL, 而安装 Standard PC HAL.27、0x000000B4:VIDEO_DRIVER_INIT_FAILURE错误分析:这个停止信息表示Windows因为不能启动显卡驱动, 从而无法进入图形界面. 通常是显卡的问题, 或者是存在与显卡的硬件冲突(比如:与并行或串行端口冲突).解决方案:进入安全模式查看问题是否解决, 如果可以, 请升级最新的显卡驱动程序, 如果还不行, 则很可能是显卡与并行端口存在冲突, 需要在安全模式按下WIN+break组合键打开"系统属性", 在硬件-->设备管理器中找到并双击连接打印的LPT1端口的项, 在"资源"选项卡中取消"使用自动配置"的构选, 然后将"输入/输出范围"的"03BC"改为"0378".28、0x000000BE:ATTEMPTED_WRITE_TO_READONLY_MEMORY错误分析:某个驱动程序试图向只读内存写入数据造成的. 通常是在安装了新的驱动程序, 系统服务或升级了设备的固件程序后.解决方案:如果在错误信息中包含有驱动程序或者服务文件名称, 请根据这个信息将新安装的驱动程序或软件卸载或禁用.29、0x000000C2:BAD_POOL_CALLER错误分析:一个内核层的进程或驱动程序错误地试图进入内存操作. 通常是驱动程序或存在BUG的软件造成的.解决方案:请参考前面介绍的常规解决方案相关项目进行排除.30、0x000000CE:RIVER_UNLOADED_WITHOUT_CANCELLING_PENDING_OPERATIONS错误分析:通常是由有问题的驱动程序或系统服务造成的.解决方案:请参考前面介绍的常规解决方案相关项目进行排除.31、0x000000D1:RIVER_IRQL_NOT_LESS_OR_EQUAL错误分析:通常是由有问题的驱动程序引起的(比如罗技鼠标的Logitech MouseWare 9.10和9.24版驱动程序会引发这个故障). 同时,有缺陷的内存、 损坏的虚拟内存文件、 某些软件(比如多媒体软件、杀毒软件、备份软件、DVD播放软件)等也会导致这个错误.解决方案:检查最新安装或升级的驱动程序(如果蓝屏中出现"acpi.sys"等类似文件名, 可以非常肯定时驱动程序问题)和软件; 测试内存是否存在问题; 进入"故障恢复控制台", 转到虚拟内存页面文件Pagefile.sys所在分区, 执行"del pagefile.sys"命令, 将页面文件删除; 然后在页面文件所在分区执行"chkdsk /r"命令;进入Windows后重新设置虚拟内存.如果在上网时遇到这个蓝屏, 而你恰恰又在进行大量的数据下载和上传(比如:网络游戏、BT下载), 那么应该是网卡驱动的问题, 需要升级其驱动程序.32、0x000000EA:THREAD_STUCK_IN_DEVICE_DRIVER错误分析:通常是由显卡或显卡驱动程序引发的.解决方案:先升级最新的显卡驱动, 如果不行, 则需要更换显卡测试故障是否依然发生.33、0x000000ED:UNMOUNTABLE_BOOT_VOLUME错误分析:一般是由于磁盘存在错误导致的, 有时也建议检查硬盘连线是否接触不良, 或是没有使用合乎该硬盘传输规格的连接线, 例如ATA-100仍使用ATA-33的连接线, 对低速硬盘无所谓, 但告诉硬盘(支持ATA-66以上)的要求较严格, 规格不对的连线有时也会引起这类没办法开机的故障. 如果在修复后, 还是经常出现这个错误, 很可能是硬盘损坏的前兆.解决方案:一般情况下, 重启会解决问题, 不管怎么样都建议执行"chkdsk /r"命令来检查修复硬盘34、0x000000F2:HARDWARE)INTERRUPT_STORM错误分析:内核层检查到系统出现中断风暴, 比如:某个设备在完成操作后没有释放所占用的中断. 通常这是由缺陷的驱动程序造成的.解决方案:升级或卸载最新安装的硬件驱动程序.35、0x00000135:UNABLE_TO_LOCATE_DLL错误分析:通常表示某个文件丢失或已经损坏, 或者是注册表出现错误.解决方案:如果是文件丢失或损坏, 在蓝屏信息中通常会显示相应的文件名, 你可以通过网络或是其他电脑找到相应的文件, 并将其复制到系统文件夹下的SYSTEM32子文件夹中. 如果没有显示文件名, 那就很有可能是注册表损坏, 请利用系统还原或是以前的注册表备份进行恢复.36、0x0000021A:STATUS_SYSTEM_PROCESS_TERMINATED错误分析:用户模式子系统, 例如Winlogon或客服服务运行时子系统(CSRSS)已损坏, 所以无法再保证安全性, 导致系统无法启动. 有时, 当系统管理员错误地修改了用户帐号权限, 导致其无法访问系统文件和文件夹.解决方案:使用"最后一次正确的配置", 如果无效, 可使用安装光盘进行修复安装.37、STOP 0xC0000221 or STATUS_IMAGE_CHECKSUM_MISMATCH错误分析:通常是由于驱动程序或系统DLL文件损坏造成的. 一般情况下, 在蓝屏中会出现文件名称解决方案:(1)使用Windows安装光盘进行修复安装;(2)如果还能进入安全模式, 可以"开始-->运行": sfc /scannow(3)还可以采用提取文件的方法来解决, 进入"故障恢复控制台", 使用copy或expand命令从光盘中复制或解压受损的文件. 不过, 蓝屏一般都是驱动程序文件的问题, 所以expand命令会用的都一些, 比如:蓝屏中提示tdi.sys文件, 因为驱动文件一般在i386\driver压缩包里, 所以使用: expand %CDROM:\i386\driver.cab \f:tdi.sys c:\winnt\system\drivers.(xp为expand %CDROM:\i386\driver.cab \f:tdi.sys c:\windowns\system\drivers)38、0×0000007E:找不到指定的模块错误分析:系统进程产生错误, 但Windows错误处理器无法捕获,其产生原因很多, 包括:硬件兼容性、有问题的驱动程序或系统服务、 或者是某些软件。解决方案:请使用"事件查看器"来获取更多的信息,从中发现错误根源。39、0×000000EA:驱动和软件有冲突错误分析:这个蓝屏代码和硬件无关,是驱动和软件有冲突造成的。解决方案:如果您的机器蓝屏了,而且每次都是这个代码请想一想最近是不是更新了什么软件或者什么驱动了,把它卸载再看一下。40、0x000000FE:指定的延伸属性名称无效错误分析:指定的延伸属性名称无效解决方案:建议你重装系统,没有很好的办法,重新拔插下内存和显卡,还有就是回忆下是不是你装了什么软件后才是这样的,或是设置了什么东西才这样,具体的问题你自己解决吧 也许是你用的什么软件有什么漏洞吧 重安系统 xp系统 一般是主版和内存不协和才会引起的 换下内存试试 应该是内存问题。41、0×000000D1错误分析:通常是由有问题的驱动引起的解决方案:检查最新安装或升级的驱动程序,卸载掉试试42、0×000000116错误分析:应该是显卡驱动不兼容解决方案:建议更换厂商原带驱动43、0×0000008E错误分析:程序引用不正确的内存地址解决方案:出现蓝屏代码0×0000008E的解决办法更改、升级显卡、声卡、网卡驱动程序。请安装系统补丁。检查内存是否插紧,质量是否有问题或不兼容。升级驱动程序或升级BIOS、杀毒。44、0×00000050错误分析:内存条出问题的几率在75%以上,灰尘导致内存短路的情况在25%以上解决方案:打开机箱。把内存条重新拔插一下。两根内存条的话。就先只插一根 另外机箱既然已经打开了。就用吹风机把灰尘清理一下。记得到门口去处理哦。 不然家里就烟雾弥漫了。 如果依然蓝屏。就找个正常的内存条换上试试。多半就好了。也就是说你的内存条坏了。45、0x00000073错误分析:一般情况下,蓝屏都出现于更新了硬件驱动或新加硬件并安装其驱动后解决方案:Windows 2000/XP提供的“最后一次正确配置”就是解决蓝屏的快捷方式。重启系统,在出现启动菜单时按下8键就会出现高级启动选项菜单,接着选择“最后一次正确配置”。 46、0×0000000A错误分析:主要是由有问题的驱动程序,有缺陷或不兼容的硬件与软件造成的解决方案:有没有添加新的硬件,有的话应该检查一下新硬件是否插牢,这个问题常常为很多人所忽视,往往会引发莫名其妙的故障。如果确认没有问题,将其拔下换个插槽试试,并安装最新的驱动程序。同时在对照微软网站的硬件兼容列表,检查一下硬件是否与操作系统兼容。47、0×40000080错误分析:一般都是由 系统软件.内存.硬盘引起的解决方案:建议您检查一下您的内存,清理一下内存与机箱的积灰48、0×000000124错误分析:一般情况是系统认为硬件出错而很多时候是由内存问题导致的蓝屏;解决方案:如果加装过内存,请拆下来只用原先的内存试试。如果没有加装,也请拆下来,用橡皮擦下金手指并换下插槽来试试。49、0×000000FC错误分析:通常是由有问题的驱动程序或系统服务造成的.解决方案:你可以先试试重启系统, 在出现启动菜单时按下F8键就会出现高级启动选项菜单, 接着选择"最后一次正确配置"。 如果不行的话就在F8的时候选择进入安全模式,把最近安装过的软件卸载,如果有升级过驱动的话也把驱动卸载,进入系统后再重新安装驱动50、0×000000BE错误分析:表示硬件设备的驱动程序试图向只读内存错误地写入数据。这个错误一般是因为硬件设备驱动程序存在BUG或安装不正确引起的解决方案:建议检查一下最近有没有安装或者升级过任何硬件设备驱动程序、BIOS及 Firmware。如果有的话,请将最近更新过的驱动程序、BIOS及Firmware逐一还原。
2024年05月07日
164 阅读
0 评论
0 点赞
2024-05-07
2.5G网卡无盘优化设置解决速度慢问题
我们以云更新为例,讲解2.5G网卡优化设置直接上图:注意看一下驱动版本
2024年05月07日
231 阅读
0 评论
0 点赞
1
...
4
5
6
...
10