当前位置: 首页 > news >正文

MySQL运维实战(1.2)安装部署:使用二进制安装部署

作者:俊达

引言

上一篇我们使用了RPM进行安装部署,这是一种安装快速、简化部署和管理过程、与操作系统提供的包管理工具紧密集成的部署方法。此外,当你需要更高的灵活性和自定义性,并且愿意承担一些额外的手动配置和管理工作,那么二进制安装是一个值得考虑选择。
以下是二进制安装的一些优势:

  • 处理单机多实例:在某些情况下,希望在一台计算机上开启多个不同的服务器 ,运行多个MySQL服务进程,同时保持现有的生产设置不受干扰。使用二进制方式可以在单台机器上部署多个实例,无需额外的配置。
  • 简化升级过程:在生产环境中,MySQL的升级是一个重要且敏感的操作。使用二进制安装,原地升级的方式更加方便。只需关闭旧的 MySQL 服务器、用新的替换旧的 MySQL 二进制文件或软件包、在现有数据目录上重新启动 MySQL,以及升级现有安装中需要升级的任何剩余部分即可。
  • 自定义编译:有时候,可能需要对MySQL进行一些特定的定制或打补丁,以满足特定的业务需求。通过自己编译二进制文件,可以灵活地添加或修改功能,并满足特殊需求。这种自定义编译的方式可以让MySQL更好地适应不同的环境和需求。

1 下载二进制文件

根据操作系统版本,下载二进制包
在这里插入图片描述
下载其中的Compressed TAR,如:
在这里插入图片描述

2 解压

将下载的二进制文件下载到某个目录。
一般我们会将mysql二进制文件放到/usr/local/mysql 或者 /opt/mysql。

tar xvf mysql-8.0.32-linux-glibc2.12-x86_64.tar.xz -C /opt
mv  mysql-8.0.32-linux-glibc2.12-x86_64 mysql
ls /opt/mysql/
bin  docs  include  lib  LICENSE  man  README  share  support-files

3 准备配置文件

我们规划将MySQL数据库文件放在/data/mysql01路径下。
mysql数据目录: /data/mysql01/
配置文件:/data/mysql01/my.cnf

[mysqld]
#dir
basedir=/opt/mysql
lc_messages_dir=/opt/mysql/sharedatadir=/data/mysql01/data
tmpdir=/data/mysql01/tmp
log-error=/data/mysql01/log/alert.log
slow_query_log_file=/data/mysql01/log/slow.log
general_log_file=/data/mysql01/log/general.logsocket=/data/mysql01/run/mysql.sock#innodb
innodb_data_home_dir=/data/mysql01/data
innodb_log_group_home_dir=/data/mysql01/data
innodb_data_file_path=ibdata1:128M:autoextend

配置文件核心内容是[mysqld]下的相关路径配置:
basedir: mysql二进制文件路径
datadir: mysql数据目录
这里只配置了启动MySQL需要的最基本的参数。
真实环境中,需要根据业务需求和服务器配置优化配置,后续单独讲。

4 初始化数据库

-- 创建mysql用户
groupadd mysql
useradd mysql -g mysql-- 创建相关目录
mkdir -p /data/mysql01/{data,binlog,log,run,tmp}
chown -R mysql:mysql /data/mysql01-- 初始化数据库
./bin/mysqld --defaults-file=/data/mysql01/my.cnf --initialize --user=mysql

初始化完成后,查看alert.log中的临时密码

tail /data/mysql01/log/alert.log2021-03-29T11:20:45.693865Z 0 [Warning] InnoDB: New log files created, LSN=45790
2021-03-29T11:20:45.789596Z 0 [Warning] InnoDB: Creating foreign key constraint system tables.
2021-03-29T11:20:45.865865Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: ce7101f3-9080-11eb-9d26-080027475f71.
2021-03-29T11:20:45.869311Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened.
2021-03-29T11:20:46.234753Z 0 [Warning] CA certificate ca.pem is self signed.
2021-03-29T11:20:46.286920Z 1 [Note] A temporary password is generated for root@localhost: kguRrCbXw9;

5 启动实例

mysql服务器进程是mysqld, 可以通过执行mysqld命令直接启动数据库,当然通常我们会使用一些封装过的脚本来启动mysql。
mysqld_safe就是一个常用的脚本,它能启动mysqld,并在mysqld异常退出后重新启动mysqld

[root@box1 ~]# ./bin/mysqld_safe --defaults-file=/data/mysql01/my.cnf &
[1] 27896[root@box1 ~]# 2021-03-29T11:24:31.202499Z mysqld_safe Logging to '/data/mysql01/log/alert.log'.

通过ps,可以看到mysqld进程,以及命令行参数,mysqld_safe是mysqld的父进程。

[root@box1 mysql]# ps -elf | grep mysqld
4 S root      6445  2276  0  80   0 - 28354 do_wai 05:20 pts/0    00:00:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --defaults-file=/data/mysql01/my.cnf
4 S mysql     6738  6445  0  80   0 - 518211 poll_s 05:20 pts/0   00:00:00 /usr/local/mysql/bin/mysqld --defaults-file=/data/mysql01/my.cnf --basedir=/usr/local --datadir=/data/mysql01/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/data/mysql01/log/alert.log --pid-file=box1.pid --socket=/data/mysql01/run/mysql.sock
0 S root      6784  2276  0  80   0 - 28206 pipe_w 05:21 pts/0    00:00:00 grep --color=auto mysqld

可以看到mysqld命令行的关键参数

–defaults-file: 启动参数文件
–basedir: mysql软件的basedir
–datadir: 数据目录
–plugin-dir: mysql插件lib库路径
–user: 运行mysql的OS账号
–log-error: 错误日志路径
–socket: socket连接文件
如果不提供这些参数,mysqld会使用编译时的默认参数。
默认参数:

[root@box1 mysql]# ./bin/mysqld  --print-defaults
./bin/mysqld would have been started with the following arguments:
--datadir=/var/lib/mysql --socket=/var/lib/mysql/mysql.sock --symbolic-links=0

默认参数文件路径:

[root@box1 mysql]# ./bin/mysqld  --verbose --help | more
2021-03-31T09:33:30.820738Z 0 [ERROR] COLLATION 'latin1_swedish_ci' is not valid for CHARACTER SET 'utf8mb4'
./bin/mysqld  Ver 5.7.32-debug for Linux on x86_64 (lazybug)
Copyright (c) 2000, 2020, 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.Starts the MySQL database server.Usage: ./bin/mysqld [OPTIONS]Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf ~/.my.cnf
The following groups are read: mysqld server mysqld-5.7
The following options may be given as the first argument:
--print-defaults        Print the program argument list and exit.
--no-defaults           Don't read default options from any option file,except for login file.
--defaults-file=#       Only read default options from the given file #.

通过mysqld --verbose --help可以看到参数文件搜索路径:

/etc/my.cnf, /etc/mysql/my.cnf, /usr/local/mysql/etc/my.cnf, ~/.my.cnf

在运维多实例mysql时,我们通常会指定my.cnf的路径,而不使用默认路径的配置文件。

避免读取默认配置参数文件中的配置,引起各种问题。

加了–defaults-file后,就只会从defaults-file指定文件中读取配置。

日志文件

如果启动过程中有问题,可以通过alert日志文件查看具体的问题

$ tail -100 /data/mysql01/log/alert.log2021-03-29T11:24:31.229330Z mysqld_safe Starting mysqld daemon with databases from /data/mysql01/data
2021-03-29T11:24:31.407665Z 0 [Note] /usr/local/mysql/bin/mysqld (mysqld 5.7.32-debug) starting as process 28189 ...
2021-03-29T11:24:31.412908Z 0 [Note] InnoDB: PUNCH HOLE support available
2021-03-29T11:24:31.412934Z 0 [Note] InnoDB: !!!!!!!! UNIV_DEBUG switched on !!!!!!!!!
2021-03-29T11:24:31.412939Z 0 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins
2021-03-29T11:24:31.412942Z 0 [Note] InnoDB: Uses event mutexes
2021-03-29T11:24:31.412947Z 0 [Note] InnoDB: GCC builtin __atomic_thread_fence() is used for memory barrier
2021-03-29T11:24:31.412950Z 0 [Note] InnoDB: Compressed tables use zlib 1.2.11
2021-03-29T11:24:31.412954Z 0 [Note] InnoDB: Using Linux native AIO
2021-03-29T11:24:31.413276Z 0 [Note] InnoDB: Number of pools: 1
2021-03-29T11:24:31.413391Z 0 [Note] InnoDB: Using CPU crc32 instructions
2021-03-29T11:24:31.414823Z 0 [Note] InnoDB: Initializing buffer pool, total size = 512M, instances = 1, chunk size = 128M
2021-03-29T11:24:31.589281Z 0 [Note] InnoDB: Completed initialization of buffer pool
2021-03-29T11:24:31.594759Z 0 [Note] InnoDB: If the mysqld execution user is authorized, page cleaner thread priority can be changed. See the man page of setpriority().
2021-03-29T11:24:31.611389Z 0 [Note] InnoDB: Highest supported file format is Barracuda.
2021-03-29T11:24:31.667674Z 0 [Note] InnoDB: Creating shared tablespace for temporary tables
2021-03-29T11:24:31.667861Z 0 [Note] InnoDB: Setting file '/data/mysql01/data/ibtmp1' size to 12 MB. Physically writing the file full; Please wait ...
2021-03-29T11:24:31.680116Z 0 [Note] InnoDB: File '/data/mysql01/data/ibtmp1' size is now 12 MB.
2021-03-29T11:24:31.685528Z 0 [Note] InnoDB: 96 redo rollback segment(s) found. 96 redo rollback segment(s) are active.
2021-03-29T11:24:31.685540Z 0 [Note] InnoDB: 32 non-redo rollback segment(s) are active.
2021-03-29T11:24:31.689004Z 0 [Note] InnoDB: Waiting for purge to start
2021-03-29T11:24:31.741474Z 0 [Note] InnoDB: 5.7.32 started; log sequence number 2746702
2021-03-29T11:24:31.742643Z 0 [Note] InnoDB: Loading buffer pool(s) from /data/mysql01/data/ib_buffer_pool
2021-03-29T11:24:31.742725Z 0 [Note] Plugin 'FEDERATED' is disabled.
2021-03-29T11:24:31.752433Z 0 [Note] InnoDB: Buffer pool(s) load completed at 210329  7:24:31
2021-03-29T11:24:31.757409Z 0 [Note] Found ca.pem, server-cert.pem and server-key.pem in data directory. Trying to enable SSL support using them.
2021-03-29T11:24:31.757426Z 0 [Note] Skipping generation of SSL certificates as certificate files are present in data directory.
2021-03-29T11:24:31.758133Z 0 [Warning] CA certificate ca.pem is self signed.
2021-03-29T11:24:31.758185Z 0 [Note] Skipping generation of RSA key pair as key files are present in data directory.
2021-03-29T11:24:31.758504Z 0 [Note] Server hostname (bind-address): '*'; port: 3306
2021-03-29T11:24:31.759379Z 0 [Note] IPv6 is available.
2021-03-29T11:24:31.759408Z 0 [Note]   - '::' resolves to '::';
2021-03-29T11:24:31.759434Z 0 [Note] Server socket created on IP: '::'.
2021-03-29T11:24:31.796451Z 0 [Note] Event Scheduler: Loaded 0 events
2021-03-29T11:24:31.796935Z 0 [Note] /usr/local/mysql/bin/mysqld: ready for connections.
Version: '5.7.32-debug'  socket: '/data/mysql01/run/mysql.sock'  port: 3306  lazybug

日志文件最后一行显示启动成功,提示本地socket文件路径和监听端口。

6 修改默认密码

mysql 5.7开始,需要先修改密码,才能正常访问数据库:

[root@box1 run]# /usr/local/mysql/bin/mysql -uroot -h127.0.0.1 -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.7.32-debugCopyright (c) 2000, 2020, 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> select 1;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.mysql> alter user 'root'@'localhost' identified by 'helloworld';
Query OK, 0 rows affected (0.00 sec)mysql> select 1;
+---+
| 1 |
+---+
| 1 |
+---+
1 row in set (0.00 sec)

更多技术信息请查看云掣官网https://yunche.pro/?t=yrgw

相关文章:

MySQL运维实战(1.2)安装部署:使用二进制安装部署

作者:俊达 引言 上一篇我们使用了RPM进行安装部署,这是一种安装快速、简化部署和管理过程、与操作系统提供的包管理工具紧密集成的部署方法。此外,当你需要更高的灵活性和自定义性,并且愿意承担一些额外的手动配置和管理工作&am…...

ChatGPT一周年:开源语言大模型的冲击

自2022年末发布后,ChatGPT给人工智能的研究和商业领域带来了巨大变革。通过有监督微调和人类反馈的强化学习,模型可以回答人类问题,并在广泛的任务范围内遵循指令。在获得这一成功之后,人们对LLM的兴趣不断增加,新的LL…...

C++ Qt开发:Charts绘图组件概述

Qt 是一个跨平台C图形界面开发库,利用Qt可以快速开发跨平台窗体应用程序,在Qt中我们可以通过拖拽的方式将不同组件放到指定的位置,实现图形化开发极大的方便了开发效率,本章将重点介绍QCharts二维绘图组件的常用方法及灵活运用。 …...

基于Java+SpringBoot实现人脸识别搜索

基于JavaSpringBoot实现人脸识别搜索 引言 背景介绍 结合人脸识别技术,在工厂、学校、商场、餐厅等人流密集的场所进行监控,对人流进行自动统计、识别和追踪,同时标记存在安全隐患的行为及区域,并发出告警提醒,加强…...

【论文阅读】FreeU: Free Lunch in Diffusion U-Net

FreeU: 无需训练直接提升扩散模型生成效果。 paper:https://arxiv.org/abs/2309.11497 code:GitHub - ChenyangSi/FreeU: FreeU: Free Lunch in Diffusion U-Net 1. 介绍 贡献: •研究并揭示了U-Net架构在扩散模型中去噪的潜力&#xff0…...

TypeScript实战——ChatGPT前端自适应手机端,PC端

前言 「作者主页」:雪碧有白泡泡 「个人网站」:雪碧的个人网站 可以在线体验哦:体验地址 文章目录 前言引言先看效果PC端手机端 实现原理解释 包的架构目录 引言 ChatGPT是由OpenAI开发的一种基于语言模型的对话系统。它是GPT(…...

自定义ORM(mybatis)源码(六)-类型处理器

自定义ORM(mybatis)源码(六)-类型处理器 模仿mybatis 用于处理 sql 设置参数类型和 执行 sql 后响应字段的类型处理 TypeHandler public interface TypeHandler<T> {/*** sql 设置参数值* param pstmt* param i* param value* throws SQLException*/void setParamete…...

Linux shell编程学习笔记37:readarray命令和mapfile命令

目录 0 前言1 readarray命令的格式和功能 1.1 命令格式1.2 命令功能1.3 注意事项2 命令应用实例 2.1 从标准输入读取数据时不指定数组名&#xff0c;则数据会保存到MAPFILE数组中2.2 从标准输入读取数据并存储到指定的数组2.3 使用 -O 选项指定起始下标2.4 用-n指定有效行数…...

GDB:强大的GNU调试器

GDB&#xff0c;全称为GNU Debugger&#xff0c;是一款广泛使用的源代码级调试工具。它支持多种编程语言&#xff0c;包括C、C、Fortran、Objective-C、Python、Ada和Go等。GDB能够帮助开发者在开发过程中定位和修复程序中的错误&#xff0c;通过设置断点、查看变量值、单步执行…...

综述 2022-Egyptian Informatics Journal:电子健康记录的安全和隐私

Keshta, Ismail, and Ammar Odeh. "Security and privacy of electronic health records: Concerns and challenges." Egyptian Informatics Journal 22.2 (2021): 177-183. https://doi.org/10.1016/j.eij.2020.07.003 被引次数&#xff1a;207 IF 5.2 / JCR Q2...

PHP数组定义和输出

数组就是一组数据的集合&#xff0c;把一系列数据组织起来&#xff0c;形成一个可操作的整体。 PHP中的数组与Java的数组不一样&#xff0c;需要有key&#xff08;键&#xff09;和value&#xff08;值&#xff09;&#xff0c;相当于Java中数组和键值对的结合。 数组的定义 …...

MySQL中已经有了Binlog,为啥还要有Redo Log

参考文章 MySQL中的Binlog和Redo Log虽然都与事务的持久性和可恢复性有关&#xff0c;但它们服务于不同的目的和场景&#xff0c;并且在MySQL的架构中扮演着互补的角色。 Redo Log&#xff1a; 目的&#xff1a;Redo Log 主要用于保证InnoDB存储引擎的事务持久性。它确保在系…...

Java数据结构-模拟ArrayList集合思想,手写底层源码(1),底层数据结构是数组,编写add添加方法,正序打印和倒叙打印

package com.atguigu.structure; public class Demo02_arrayList {public static void main(String[] args) {MyGenericArrayListV1 arrayListV1 new MyGenericArrayListV1();//arr.add(element:100,index:1);下标越界&#xff0c;无法插入//初始化&#xff08;第一次添加&…...

MyBatis-Plus如何 关闭SQL日志打印

前段时间公司的同事都过来问我&#xff0c;hua哥公司的项目出问题了&#xff0c;关闭不了打印sql日记&#xff0c;项目用宝塔自己部署的&#xff0c;磁盘满了才发现大量的打印sql日记&#xff0c;他们百度过都按照网上的配置修改过不起作用&#xff0c;而且在调试时候也及为不方…...

单元测试框架jUnit

JUnit&#xff08;Java单元测试框架&#xff09;是用于在Java应用程序中执行单元测试的框架。它是一个开源框架&#xff0c;广泛用于Java开发中。以下是一些关于JUnit的常见问题以及相应的汉语回答&#xff1a; 1. **什么是JUnit&#xff1f;** - JUnit是一个用于编写和运行…...

微软 Visual Studio 迎来 AI 建议命名功能

目录 1微软 Visual Studio 迎来 AI 建议命名功能 2专访核桃编程CEO曾鹏轩&#xff1a;实操是掌握编程技能的唯一办法 1微软 Visual Studio 迎来 AI 建议命名功能 IT之家 12 月 19 日消息&#xff0c;使用付费 GitHub Copilot Chat 扩展的 Visual Studio Preview 用户&#xf…...

【排序算法】C语言实现选择排序与冒泡排序

文章目录 &#x1f680;前言&#x1f680;冒泡排序✈️冒泡排序的逻辑✈️冒泡排序coding &#x1f680;选择排序✈️选择排序的逻辑✈️选择排序coding &#x1f680;前言 这里是阿辉算法与数据结构专栏的第一篇文章&#xff0c;咱们就从排序算法开始讲起&#xff0c;排序算法…...

设计模式之-原型模式,快速掌握原型模式,通俗易懂的理解原型模式以及使用场景

文章目录 一、什么是原型模式二、使用场景三、代码示例 一、什么是原型模式 原型模式是一种创建型设计模式&#xff0c;它允许通过复制现有对象来创建新的对象&#xff0c;而无需通过调用构造函数来创建。原型模式通过克隆操作来创建对象&#xff0c;提供了一种更加灵活和高效…...

数据结构之进阶二叉树(二叉搜索树和AVL树、红黑树的实现)超详细解析,附实操图和搜索二叉树的实现过程图

绪论​ “生命有如铁砧&#xff0c;愈被敲打&#xff0c;愈能发出火花。——伽利略”&#xff1b;本章主要是数据结构 二叉树的进阶知识&#xff0c;若之前没学过二叉树建议看看这篇文章一篇掌握二叉树&#xff0c;本章的知识从浅到深的对搜索二叉树的使用进行了介绍和对其底层…...

SpringIOC之LocaleContext

博主介绍:✌全网粉丝5W+,全栈开发工程师,从事多年软件开发,在大厂呆过。持有软件中级、六级等证书。可提供微服务项目搭建与毕业项目实战,博主也曾写过优秀论文,查重率极低,在这方面有丰富的经验✌ 博主作品:《Java项目案例》主要基于SpringBoot+MyBatis/MyBatis-plus+…...

前端案例—antdDesign的Select多选框组件加上全选功能

前端案例—antdDesign的Select多选框组件加上全选功能。 实现效果如下&#xff1a; Select 组件里有这个属性&#xff0c;可以利用这个对下拉菜单进行自定义。 const handleChange (e, value) > {setSelectState(e.target.checked)let arr productOptions?productOption…...

个人财务工具、密钥管理平台、在线会计软件、稍后阅读方案 | 开源专题 No.51

gethomepage/homepage Stars: 10.1k License: GPL-3.0 这个项目是一个现代化、完全静态的、快速且安全的应用程序仪表盘&#xff0c;具有超过 100 种服务和多语言翻译的集成。 快速&#xff1a;网站在构建时以静态方式生成&#xff0c;加载时间飞快。安全&#xff1a;所有对后…...

HBase基础知识(二):HBase集群部署、HBaseShell操作

1. HBase安装部署 1.1 Zookeeper正常部署 首先保证Zookeeper集群的正常部署&#xff0c;并启动之&#xff1a; 创建集群启动脚本&#xff1a; #!/bin/bash case $1 in "start"){ for i in hadoop100 hadoop101 hadoop102 do echo----------zookeeper $i 启动----…...

C 标准库 - <time.h>

简介 time.h 头文件定义了四个变量类型、两个宏和各种操作日期和时间的函数。 库变量 下面是头文件 time.h 中定义的变量类型&#xff1a; 序号变量 & 描述1size_t是无符号整数类型&#xff0c;它是 sizeof 关键字的结果。2clock_t这是一个适合存储处理器时间的类型。3…...

养老院自助饮水机(字符设备驱动)

目录 1、项目背景 2、驱动程序 2.1 三层架构 2.2 驱动三要素 2.3 字符设备驱动 2.3.1 驱动模块 2.3.2 应用层 3、设计实现 3.1 项目设计 3.2 项目实现 3.2.1 驱动模块代码 3.2.2 用户层代码 4、功能特性 5、技术分析 6. 总结与未来展望 1、项目背景 养老院的老人…...

Jenkins 构建触发器指南

目录 触发远程构建 (例如&#xff0c;使用脚本) 描述 配置步骤 安全令牌 在其他项目构建完成后触发构建 描述 配置步骤 定时触发构建 描述 配置步骤 GitHub钩子触发GITScm轮询 描述 配置步骤 Poll SCM - 轮询版本控制系统 描述 触发远程构建 (例如&#xff0c;使…...

通用的java中部分方式实现List<自定义对象>转为List<Map>

自定义类 /*** date 2023/12/19 11:20*/ public class Person {private String name;private String sex;public Person() {}public Person(String name, String sex) {this.name name;this.sex sex;}public String getName() {return name;}public String getSex() {return…...

Python---静态Web服务器-返回固定页面数据

1. 开发自己的静态Web服务器 实现步骤: 编写一个TCP服务端程序获取浏览器发送的http请求报文数据读取固定页面数据&#xff0c;把页面数据组装成HTTP响应报文数据发送给浏览器。HTTP响应报文数据发送完成以后&#xff0c;关闭服务于客户端的套接字。 2. 静态Web服务器-返回固…...

react v-18父组件调用子组件的方法和数据

版本 "react": "^18.1.0", "react-dom": "^18.1.0", 父组件 import React, { useState, useRef, memo, useEffect } from "react"; import { useTranslation } from "react-i18next"; import { Card } from &q…...

Linux——缓冲区

我在上篇博客留下了一个问题&#xff0c;那个问题就是关于缓冲区的问题&#xff0c;我们发现 文件有缓冲区&#xff0c;语言有用户级缓冲区&#xff0c;那么缓冲区到底是什么&#xff1f;&#xff0c;或者该怎 么认识缓冲区&#xff1f;这篇文章或许会让你有所认识&#xff0c;…...

wordpress 访客插件/网页设计代码

上篇博客试图采用RecyclerView这个组件来实现一个滑动效果&#xff0c;结果发现大部分代码都是通过java代码来控制填充&#xff0c;设计时不仅操作麻烦&#xff08;最主要看不懂&#xff09;&#xff0c;而且不能像xml文件一样实时预览效果。 碰巧发现了这篇博客 Android ListV…...

企业网站的推广方法/站内优化主要从哪些方面进行

如下图所示&#xff0c;我在任何时候按F1键&#xff0c;都会自动弹出Windows帮助和支持&#xff0c;事实上这个功能很鸡肋&#xff0c;从来没用过&#xff0c;但是玩魔兽的时候确实必须的&#xff0c;F1控制英雄的&#xff0c;呵呵。 方法还是有的&#xff0c;在任务管理器中找…...

图片生成器软件/淘宝关键词优化技巧教程

在一般的网页中&#xff0c;都会有登录功能&#xff0c;只有登录的用户才能有权限访问系统中的资源。一般检查用户是否登录通常是通过跟踪用户的session完成的&#xff0c;通过ActionContext既可以访问到session中的属性&#xff0c;拦截器的intercept(ActionInvocation invoca…...

河北住房和城乡建设厅官方网站/关键词点击价格查询

作者&#xff1a;Baijayanta Roy来源&#xff1a;towardsdatascience编译&内容补充&#xff1a;早起Python在用python进行机器学习或者日常的数据处理中&#xff0c;pandas是最常用的Python库之一&#xff0c;熟练掌握pandas是每一个数据科学家的必备技能&#xff0c;本文将…...

wordpress 美术馆/大型网站建设平台

模板介绍 精美PPT模板设计&#xff0c;简约创意个人简历求职竞聘PPT模板。一套岗位晋升幻灯片模板&#xff0c;内含橙色多种配色&#xff0c;精美风格设计&#xff0c;动态播放效果&#xff0c;精美实用。 一份设计精美的PPT模板&#xff0c;可以让你在汇报演讲时脱颖而出。 …...

seo的中文含义/香港seo公司

进入Dos界面后&#xff0c;输入fdisk /mbr 不会损坏数据.转载于:https://www.cnblogs.com/wjonjon/archive/2009/09/15/1566735.html...