vincent_duan的专栏

私信 关注
vincent_duan
码龄9年

我等采石之人 当心怀建造大教堂之愿景

  • 139,821
    被访问量
  • 660
    原创文章
  • 27,902
    作者排名
  • 34
    粉丝数量
  • 目前就职 北京
  • 于 2012-07-08 加入CSDN
获得成就
  • 获得33次点赞
  • 内容获得33次评论
  • 获得120次收藏
荣誉勋章
兴趣领域
  • #大数据
    #storm#ETL#hive#spark#hadoop#数据仓库
TA的专栏
  • 机器学习
    16篇
  • python
    13篇
  • Latex
    1篇
  • FusionInsight HD
    1篇
  • Spark Streaming
    4篇
  • 网络安全
    6篇
  • 计算机网络
    19篇
  • spark
    33篇
  • Apache Flink
    33篇
  • elasticsearch
    40篇
  • Hadoop
    43篇
  • 杂七杂八
    9篇
  • docker
    44篇
  • Adobe PhotoShop
    1篇
  • spring
    44篇
  • 并发
    19篇
  • Adobe Premiere Pro
    4篇
  • sed
    8篇
  • Linux
    82篇
  • 算法
    3篇
  • 前端
    28篇
  • java
    74篇
  • 菜谱
    20篇
  • openstack
    1篇
  • 知识图谱
    4篇
  • 其他
    23篇
  • git
    6篇
  • mysql
    34篇
  • redis
    1篇
  • 最近
  • 文章
  • 资源
  • 问答
  • 课程
  • 帖子
  • 收藏
  • 关注/订阅

elasticsearch dump 教程

下载安装首先需要自行下载并安装node。然后下载elasticsearch-dump,elasticsearch-dump-master.tar.gz然后解压:tar -xvf elasticsearch-dump-master.tar.gz -C ~/app/然后执行sudo ln -s /home/iie4bu/app/elasticsearch-dump-master/bin/elasticdump /usr/local/bin/,这样就可以直接使用elasticdump了命令导出数据,包括
原创
2阅读
0评论
0点赞
发布博客于 5 天前

PyTorch教程(十二):链式法则

通过使用链式法则就可以把最后一层的误差一层一层的输出到中间层的权值中去,从而得到中间层的梯度信息,然后就可以很好的更新权值,得到最优化的效果。链式法则公式:∂y∂x=∂y∂u∂u∂x\frac {\partial y}{\partial x} = \frac {\partial y }{\partial u} \frac {\partial u}{\partial x} ∂x∂y​=∂u∂y​∂x∂u​对于一个简单的线性层来说不需要链式法则,但是对于对于实际的神经网络来说,展开公式是非常复杂的,不
原创
8阅读
0评论
0点赞
发布博客于 6 天前

PyTorch教程(十一):多输出的感知机以及梯度

上一节中介绍了单层感知机,感知机的输出节点只有一个,只有O0O_0O0​没有O1O_1O1​。对于单层感知机的梯度下降公式如下:∂E∂wj0=(O0−t)∗O0(1−O0)xj0\frac {\partial E}{\partial w_{j0}} = (O_0 -t)*O_0(1-O_0)x_j^0∂wj0​∂E​=(O0​−t)∗O0​(1−O0​)xj0​即对参数wj0w_{j0}wj0​的梯度。可以看出wj0w_{j0}wj0​的梯度跟这一层的输出权值以及xj0x_{j0}xj0​有关。多
原创
8阅读
0评论
0点赞
发布博客于 6 天前

PyTorch教程(十):单层感知机以及梯度更新

单层感知机模型y=XW+by=∑xi∗wi+by = XW + b \\y = \sum x_i*w_i+ by=XW+by=∑xi​∗wi​+b单层感知机模型的每一个输入节点xix_ixi​和对应的权重wiw_iwi​相乘累加后,与bias相加,便得到了预测值。我们使用sigmoid函数作为激活函数,通常使用符号σ\sigmaσ表示。对于最左边的输入层的上标,也就是xn0x_n^0xn0​中的0表示第0层,n表示第0层第n个元素节点。从www到σ\sigmaσ是1层,wij1w^1_{i
原创
5阅读
0评论
0点赞
发布博客于 7 天前

PyTorch教程(九):损失函数与Loss的梯度

均方差Mean Squared Error(MSE)MSE基本形式:loss=∑[y−(xw+b)]2loss = \sum[y-(xw+b)]^2loss=∑[y−(xw+b)]2这里的模型使用非常简单的线性感知机,如果使用其他的网络,则修改为loss=∑[y−f(x;w,b)]2loss = \sum[y-f(x;w,b)]^2loss=∑[y−f(x;w,b)]2需要注意的是,这里的均方差MSE和L2-norm是有区别的:l2−norm=∑(y1−y2)2l2-norm=\sqrt{\
原创
19阅读
0评论
0点赞
发布博客于 7 天前

PyTorch教程(八):常见激活函数与Loss的梯度

如果不用激活函数,每一层输出都是上层输入的线性函数,无论神经网络有多少层,输出都是输入的线性组合,这种情况就是最原始的感知机。如果使用的话,激活函数给神经元引入了非线性因素,使得神经网络可以任意逼近任何非线性函数,这样神经网络就可以应用到众多的非线性模型中。上图就是一个最简单的激活函数,当∑i=0N>0\sum_{i=0}^N>0∑i=0N​>0时节点才会激活。但是这个激活函数有一个问题是不可导,在∑i=0N=0\sum_{i=0}^N=0∑i=0N​=0处是处于不连续的情况下,因
原创
10阅读
0评论
0点赞
发布博客于 7 天前

PyTorch教程(七):属性统计

范数1-范数:∥x∥1=∑i=1N∣xi∣\left \| x \right \|_1=\sum_{i=1}^N\left| x_i \right|∥x∥1​=∑i=1N​∣xi​∣ 即向量元素绝对值之和。import torcha = torch.full([8],1)b = a.view(2,4)# tensor([[1, 1, 1, 1],# [1, 1, 1, 1]])c = a.view(2,2,2)# tensor([[[1, 1],# [1, 1
原创
8阅读
0评论
0点赞
发布博客于 9 天前

PyTorch教程(六):算数运算

import torcha = torch.rand(3,4)# tensor([[0.0422, 0.9152, 0.5486, 0.8753],# [0.3918, 0.6056, 0.0634, 0.9498],# [0.4444, 0.2209, 0.8165, 0.1533]])b = torch.rand(4)# tensor([0.4145, 0.2913, 0.1655, 0.3705])a + b# tensor([[0.4567, 1.2
原创
13阅读
0评论
0点赞
发布博客于 10 天前

PyTorch教程(五):Broadcasting

Broadcasting可以自动进行维度的扩展,而且不需要拷贝数据。例如:import torcha = torch.rand(3,4)# tensor([[0.0422, 0.9152, 0.5486, 0.8753],# [0.3918, 0.6056, 0.0634, 0.9498],# [0.4444, 0.2209, 0.8165, 0.1533]])b = torch.rand(4)# tensor([0.4145, 0.2913, 0.1655,
原创
6阅读
0评论
0点赞
发布博客于 10 天前

PyTorch教程(四):维度变换

view和reshape在PyTorch0.3版本中使用view,在PyTorch0.4以后增加了reshape,作用是将一个shape转变为另一个shape。shape变化的前提是保证numel()一致a = torch.rand(4,1,28,28) # 4张图片,灰度,28长,28宽# torch.Size([4, 1, 28, 28])a.view(4, 1*28*28) a.view(4, 1*28*28).shape # torch.Size([4, 784]) # 这里丢失了原
原创
29阅读
0评论
0点赞
发布博客于 11 天前

PyTorch教程(三):索引与切片

a = torch.rand(4,3,28,28) # 4张图片,3通道,高度28,宽度28 a[0].shape # torch.Size([3, 28, 28]) 表示第0张图片的shape是3通道,高度28,宽度28 a[0,0].shape # torch.Size([28, 28]) 表示第0张图片第0个通道的shape a[0,0,2,4].shape # tensor(0.5649) 表示第0张图片第0个通道第2行第4列的值是0.5649a[:2].shape # torch.Si.
原创
13阅读
0评论
0点赞
发布博客于 11 天前

PyTorch教程(二):创建Tensor

从numpy中引入数据a = numpy.array([2,3.3])torch.from_numpy(a) # tensor([2.0000, 3.3000], dtype=torch.float64)a = numpy.ones([2,3])torch.from_numpy(a)# tensor([[1., 1., 1.],# [1., 1., 1.]], dtype=torch.float64)从list中引入数据torch.tensor([2, 3.2]) # te
原创
12阅读
0评论
0点赞
发布博客于 11 天前

PyTorch教程(一):张量数据类型

pythonPyTorchintIntTensor of size()floatFloatTensor of size()Int arrayIntTensor of size[d1,d2,…]Float arrayFloatTensor of size [d1,d2,…]string–需要注意的是,python中的string,在PyTorch中没有对应的数据类型,一般使用One-hot可以进行表示,也就是[0,1,0,0,0]的方式表示一个字符...
原创
23阅读
0评论
0点赞
发布博客于 11 天前

机器学习(四) 下采样和上采样

查看数据样本import pandas as pdimport matplotlib.pyplot as pltimport numpy as np%matplotlib inlinedata = pd.read_csv("./data/creditcard.csv")data.head()这个数据,并不是最原始数据,而是通过降维操作把数据进行特征压缩。我们可以根据这些特征进行建模。这些数据有一列class,用来标注是否正常,0表示正常,1表示异常。这是经典的二分类问题。首先查看
原创
101阅读
0评论
0点赞
发布博客于 24 天前

机器学习(三)逻辑回归以及python简单实现

虽然有回归两个字,但是依然是解决的时分类问题,是最经典的二分类算法。分类算法有很多,例如支持向量机和神经网络。而逻辑回归算法应用的比较广,往往是优先选择的算法。Sigmod函数表达式:g(z)=11+e−zg(z)=\frac{1}{1+e^{-z}}g(z)=1+e−z1​自变量取值为任意实数,值域[0,1]在线性回归中的结果预测出一个值,将这个值放到这个sigmod中,得到一个输出结果,而这个结果可以表示为概率值。假设预测函数: hθ(x)=g(θTx)=11+e−θTxh_\the
原创
22阅读
0评论
0点赞
发布博客于 2 月前

机器学习(二)梯度下降

在上一节(线性回归)中介绍,在线性回归中参数值θ\thetaθ是不一定可以求出的,但是可以通过梯度下降的方式可求。在微积分里面,对多元函数的参数求偏导数,把求得的各个参数的偏导数以向量的形式写出来,就是梯度。比如函数f(x,y)f(x,y)f(x,y), 分别对x,y求偏导数,求得的梯度向量就是(∂f∂x,∂f∂y)T(\frac {\partial f}{\partial x},\frac {\partial f}{\partial y})^T(∂x∂f​,∂y∂f​)T,简称grad f(x,y)或者
原创
15阅读
0评论
0点赞
发布博客于 2 月前

机器学习(一)线性回归

1. 举个例子数据:工资和年龄(2个特征)目标:预测银行可以给我贷款多少钱(标签)考虑:工资和年龄都会影响银行贷款的结果,那么它们各自的影响有多大呢?(参数)1.1数据工资年龄贷款额度40002520000800030700005000283500075003350000120004085000这份数据有两个特征x1:工资和x2:年龄,最终要预测一个具体的值y,这就需要回归模型,而非分类算法。目的是如何找到这个曲面函数。
原创
15阅读
0评论
0点赞
发布博客于 2 月前

Seaborn 入门

安装Seabornpip install Seaborn使用Seaborn之前import seaborn as snsimport numpy as npimport matplotlib as mplimport matplotlib.pyplot as plt# 可以直接把图显示出来,不用写show()%matplotlib inline def sinplot(flip=1): x = np.linspace(0, 14, 100) # 0到14之间找到一百个点
原创
13阅读
0评论
0点赞
发布博客于 2 月前

%matplotlib inline 的作用

%matplotlib inline这个方法的经常出现在使用Jupyter中,其实%matplotlib inline这一句是IPython的魔法函数,可以在IPython编译器里直接使用,作用是内嵌画图,省略掉plt.show()这一步,直接显示图像
原创
15阅读
0评论
0点赞
发布博客于 2 月前

Jupyter Noteboot 添加kernel 环境

首先执行conda install ipykernel激活环境source activate 环境名称将环境写入notebook的kernel中,python -m ipykernel install --user --name 环境名称 --display-name "Python (环境名称)"查看kernel列表:jupyter kernelspec list,可以看到新添加的环境打开jupyter,jupyter notebook...
原创
15阅读
0评论
0点赞
发布博客于 2 月前

Matplotlib入门

原始数据样本DATE,VALUE1948-01-01,3.41948-02-01,3.81948-03-01,4.01948-04-01,3.91948-05-01,3.51948-06-01,3.61948-07-01,3.61948-08-01,3.91948-09-01,3.81948-10-01,3.71948-11-01,3.81948-12-01,4.01949-01-01,4.31949-02-01,4.71949-03-01,5.01949-04-01,5.
原创
35阅读
0评论
0点赞
发布博客于 2 月前

蔓越莓饼干

原材料黄油75g低筋面粉115g绵白糖60g鸡蛋黄(全蛋液)2个蔓越莓干35g做法将蔓越莓干切成小颗粒黄油提前软化,加入绵白糖,直接搅拌均匀加入全蛋液,继续搅拌均匀倒入刚刚切好的蔓越莓干,搅拌均匀倒入低筋面粉,搅拌均匀将面团,加入模具中,放到冰箱冷冻室,一个小时后取出切成0.7cm厚的片状烤箱上下火165度预热,定时20分钟...
原创
13阅读
0评论
0点赞
发布博客于 2 月前

pandas入门

numpy主要是关于矩阵的运算,pandas是关于数据如何处理的相关库当我们拿到一份数据之后,需要对数据进行相应的处理。pandas底层都调用了numpy。1. 读取文件import pandasfood_info = pandas.read_csv('food_info.csv')print(type(food_info)) # 查看该数据的类print(food_info.dtypes) # 查看数据中的数据类型输出结果如下:<class 'pandas.core.frame.D
原创
12阅读
0评论
0点赞
发布博客于 2 月前

numpy入门

1. 待处理的原始数据这里有原始数据文件world_alcohol.txt,文件内容如下:Year,WHO region,Country,Beverage Types,Display Value1986,Western Pacific,Viet Nam,Wine,01986,Americas,Uruguay,Other,0.51985,Africa,Cte d'Ivoire,Wine,1.621986,Americas,Colombia,Beer,4.271987,Americas,Saint
原创
22阅读
0评论
0点赞
发布博客于 2 月前

windows 下anaconda创建环境慢的解决办法

在创建环境之前在Anaconda Prompt中运行以下代码,切换国内清华源仅限windows系统conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/conda config --set show_channel_urls yes
原创
395阅读
2评论
0点赞
发布博客于 2 月前

mysql 导出数据为csv格式

LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE 'file_name.txt' [REPLACE | IGNORE] INTO TABLE tbl_name [FIELDS [TERMINATED BY '\t'] -- 在字段之间写入制表符 [[OPTIONALLY] ENCLOSED BY ''] --不把字段包含在任何引号字符中。如果是ENCLOSED BY "'" :使用单引号把各个字
原创
62阅读
0评论
0点赞
发布博客于 2 月前

mysql5.7导出数据报错The MySQL server is running with the --secure-file-priv option so it cannot execute

想把user表的数据导出到user.csv,在导出mysql数据到本地时报错,语句如下:mysql> SELECT * FROM user INTO OUTFILE '/mnt/data/user.csv' -> FIELDS TERMINATED BY '\t' ENCLOSED BY '' -> LINES TERMINATED BY '
';查看官方文档,secure_file_priv参数用于限制LOAD DATA, SELECT …OUTFILE, LOA
原创
27阅读
0评论
0点赞
发布博客于 2 月前

【LaTex】LaTeX Warning: Citation xxx on page xxx undefined on input line xxx

学习使用LaTeX时,引用参考文献时出现’?’:在控制台中输出:LaTeX Warning: Citation xxx on page xxx undefined on input line xxx解决办法:可以通过编译两次来生成pdf文件:pdflatex paperbibtex paperpdflatex paperpdflatex paper...
原创
640阅读
0评论
0点赞
发布博客于 2 月前

awk 条件判断

原始文件内容如下:vincent,26sofia,24natasha,catalina,20jenny,33clerk,jerry,目的是只需要把有年龄的一行筛选出来,命令如下:awk -F ',' '{if(length($2)!=0) print($0)}' student.txt
原创
38阅读
0评论
0点赞
发布博客于 3 月前

elasticsearch 6.2.3 从零开始配置

安装配置JDK禁用交换分区永久禁用需要修改文件/etc/fstab将swap那一行注释掉执行sudo swapoff -a也可以暂时禁用交换分区修改/etc/security/limits.conf修改/etc/security/limits.conf文件内容,添加:* soft nofile 700000* hard nofile 700000* - memlock unlimited修改/etc/sysctl.conf添加内容vm.max_map_count=655360执行sy
原创
35阅读
0评论
0点赞
发布博客于 4 月前

Elasticsearch forceMerge操作

一个ES索引由若干个分片组成,一个分片有若干个Lucene分段,较大的Lucene分段可以更有效的存储数据。使用_forcemergeAPI 来对分段执行合并操作,通常,我们将分段合并为一个单个的分段:max_num_segments=1首先查看我们的index当前有多少个segment:GET _cat/segments/myindex?v&h=shard,segment,size,size.memory返回结果大约有300个segment条目数。执行forcemerge:POS
原创
1084阅读
0评论
0点赞
发布博客于 4 月前

如何避免fstab挂载故障问题

我们在挂载硬盘是往往是通过修改/etc/fstab文件来自动挂载但是有时候会出现一些错误,导致无法进去系统。还需要进入到安全模式。如何避免呢?首先在修改完/etc/fstab文件之后,执行mount -a执行挂载操作然后执行echo $?j进行查验,如果返回结果是0则表示上一条命令执行成功,可以放心重启了。...
原创
88阅读
0评论
0点赞
发布博客于 4 月前

centos7.5 使用报错:用户名 不在 sudoers文件中,此事将被报告。

新建了一个用户iie4bu,当我们使用这个用户进行sudo vim /etc/profile时,提示错误:用户名 不在 sudoers文件中,此事将被报告。原因是centos和ubuntu不同之处在于把用户权限放在了/etc/sudoers中保存。解决办法:使用root用户登录执行操作chmod +wrx /etc/sudoers执行操作echo 'iie4bu ALL=(ALL) ALL' >> /etc/sudoers最后一步,也是为了这个文件的安全。重新修改这个文件的权限。改
原创
15阅读
0评论
0点赞
发布博客于 4 月前

最基本的感知器算法

import numpy as npclass Perceptron(object): """ eta: 学习率 n_iter: 权重向量的训练次数 w_: 神经分叉权重向量 errors_: 用于记录神经元判断出错次数 """ def __init__(self, eta = 0.01, n_iter = 10): self.eta = eta self.n_iter = n_iter pass.
原创
81阅读
0评论
0点赞
发布博客于 4 月前

最简单的matplotlib写法

import matplotlib.pyplot as pltimport numpy as npfrom test3 import df# 将df中0到100行的数据的第四列赋值给y向量 y = df.loc[0:100, 4].values# 将Iris-setosa转为-1,其余转为1y = np.where(y == 'Iris-setosa', -1, 1)# 将df0到100行的数据的第0列和第2列抽取出来,赋值给x向量X = df.iloc[0:100, [0, 2]].va
原创
29阅读
0评论
0点赞
发布博客于 4 月前

北京今天真蓝 但是如果1024不加班 那就不是好的程序员

 
发布Blink于 4 月前

节日快乐

 
发布Blink于 4 月前

机器学习系列(一)感知器分类算法

分类算法有两种类型:感知器和适应性线性神经元神经元的数学表示[1234] \begin{bmatrix} 1 & 2 \\ 3 & 4 \\ \end{bmatrix} [13​24​]
原创
65阅读
0评论
0点赞
发布博客于 4 月前

import tensorflow 报错 ImportError: DLL load failed: 找不到指定的模块。

刚刚在win10下使用anaconda安装了TensorFlow,但是运行import tensorflow as tf报错:这里是因为缺少了相关的ddl,我下载了微软常用运行库合集,把所有的常用ddl都安装上,把VC++的运行库补全,就可以运行了。ddl如下链接:https://pan.baidu.com/s/1E3sNbCfeyR4iMk1k_6YcGA提取码:zp07...
原创
26阅读
1评论
0点赞
发布博客于 4 月前

Anaconda安装tenserflow

判断是否安装成功anaconda:conda --version检测目前安装了哪些环境变量:conda info --envs创建新环境conda create --name <env_name> <package_names><env_name>即创建的环境名。建议以英文命名,且不加空格,名称两边不加尖括号“<>”。<package_names>即安装在环境中的包名。名称两边不加尖括号“<>”。如果要安装指.
原创
58阅读
0评论
0点赞
发布博客于 4 月前

elasticsearch6.2.3 冷热架构设计

随着集群规模越来越大,有一些冷索引不需要经常移动分片,因此把冷索引单独存储在冷节点中,把热索引(最新添加的数据)存储在热节点中。第一步 禁用rebalance主要是为了防止集群中已有的索引 rebalance 到其他节点PUT _cluster/settings{ "transient": { "cluster.routing.allocation.cluster_concurrent_rebalance":0 }}第二步:给节点加标识:node.attr.box_type关
原创
54阅读
0评论
0点赞
发布博客于 5 月前

hadoop删除DataNode节点

hadoop版本hadoop-2.6.0-cdh5.15.1删除ip为192.168.1.112的DataNode修改NameNode节点的hdfs-site.xml,添加内容:<property> <name>dfs.hosts.exclude</name> <value>/home/hadoop/app/hadoop-2.6.0-cdh5.15.1/etc/hadoop/dfs_exclude</value></proper
原创
136阅读
0评论
0点赞
发布博客于 5 月前

对接FusionInsight HD 6.5.1

登录source /opt/client/bigdata_envkinit admin或者kinit user1hive使用客户端beeline创建数据表:create table sales (transactionId int, customerId int, itemId int, amountPaid double) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' STORED AS TEXTFILE tblproperties("skip
原创
139阅读
0评论
0点赞
发布博客于 6 月前

pm2 常用命令

运行JAVA程序pm2 start java --name fileList -- -jar store1_project.jar运行shell程序pm2 start ./elasticsearch.sh --name es-data1查看当前运行的列表pm2 ls停止当前服务pm2 stop $NAME服务开启自启动首先执行:pm2 save然后执行:pm2 startup...
原创
80阅读
0评论
0点赞
发布博客于 6 月前

elasticsearch 7.8.0 kibana 7.8.0安装部署

下载es、kibana在这里 下载elasticsearch 7.8.0 版本在这里 下载kibana7.8.0版本下载后的文件:elasticsearch-7.8.0-linux-x86_64.tar.gz 和 kibana-7.8.0-linux-x86_64.tar.gz将上面两个文件进行解压。配置Elasticsearch首先配置master节点,修改elasticsearch-7.8.0/config/elasticsearch.yml 内容如下:cluster.name: my-a
原创
495阅读
0评论
0点赞
发布博客于 6 月前

Elasticsearch相关配置

bootstrap.memory_lockbootstrap.memory_lock: true锁定物理内存地址,防止es内存被交换出去,也就是避免es使用swap交换分区。频繁的交换,会导致IOPS变高。bootstrap.system_call_filter系统调用过滤检查。根据不同的操作系统,ES安装各种不同的系统调用过滤器(在Linux下使用seccomp)。这些过滤器可以阻止一些攻击行为。作为一个服务端进程,当由于某些系统漏洞被攻击者去的晋城的权限时,攻击者可以使用启动当前进程的用户权限执
原创
45阅读
0评论
0点赞
发布博客于 6 月前

elasticsearch之Recovery

什么是recovery?在elasticsearch中,recovery指的是一个索引的分片分配到另外一个节点的过程,一般在快照恢复、索引复制分片的变更、节点故障或重启时发生,由于master节点保存整个集群相关的状态信息,因此可以判断哪些分片需要再分配及分配到哪个节点,例如:如果某个主分片在,而复制分片所在的节点挂掉了,那么master需要另行选择一个可用节点,将这个主分片的复制分片分配到可用节点上,然后进行主从分片的数据复制。如果某个主分片所在的节点挂掉了,复制分片还在,那么master会主导将
原创
55阅读
0评论
0点赞
发布博客于 6 月前

centos7磁盘挂载

关闭交换分区swapoff -a挂载硬盘使用lsblk 查看当前硬盘情况可以看到sdb与sdc都没有挂载mkfs.ext4 /dev/sdb格式化硬盘mount /dev/sdb /mnt/sdb挂载硬盘修改/etc/fstab文件:/dev/sdb /mnt/sdb ext4 defaults 0 0
原创
42阅读
0评论
0点赞
发布博客于 6 月前

Elasticsearch集群Red,分片无法恢复:cannot allocatebecause all found copies of the shard are either stale or c

问题在多次重启节点时,主副分片0出现了无法分配的问题。elasticsearch 使用 Allocation IDs 的概念,这是区分不同分片的唯一标识(UUIDS)。Allocation IDs存储在 shard 级元信息中,每个 shard 都有自己的Allocation ID,同时集群级元信息中记录了一个被认为是最新shard 的Allocation ID集合,这个集合称为 in-sync allocation IDs。如果由于网络或者其他原因,主副shard没有同步,那么副本的shard会将
原创
328阅读
0评论
0点赞
发布博客于 6 月前

centos7 yum下载路径

首先修改配置文件vi /etc/yum.conf把keepcache改成1,默认是0即安装后不保存包头和软件包。cachedir后面代表的为我们安装包下载的路径。然后执行命令yum install vim安装完成后将在下面目录中:本机安装目录是:/var/cache/yum/x86_64/7/base/packages重新找一台没有安装vim软件的centos7系统,将包上传上去,执行命令rpm -ivh *.rpm,离线安装包...
原创
229阅读
0评论
0点赞
发布博客于 6 月前

centos7 网络配置

选择VMWare的NAT模式导航栏“编辑”->“虚拟网络编辑器” ->NAT模式->NAT设置记住NAT设置中的子网IP、子网掩码、网关IP三项,接下来配置文件主要是这三项。查看Mac地址,与centos中的网卡一致。编辑网络配置文件首先输入ip addr查看到网卡ens33的Mac地址与上面的一致,修改网卡ens33vi /etc/sysconfig/network-scripts/ifcfg-ens33进行编辑保存修改网络配置文件,重启网卡服务servic
原创
57阅读
0评论
0点赞
发布博客于 6 月前

Elasticsearch: too many open files

elasticsearch在平衡分片的过程中,有一些分片尝试过5次移动分片之后,未成功,就会停止移动,查看分片信息,显示too many open files在elasticsearch日志中有类似下面的日志内容:... Caused by: java.io.FileNotFoundException: /esdata/elasticsearch/elasticsearch-cluster001/nodes/0/indices/.marvel-20 14.10.27/0/index/_fo.fdt (T
原创
103阅读
0评论
0点赞
发布博客于 7 月前

hadoop集群搭建过程中不适用hostname发现slave,而是通过ip

需求搭建hadoop集群时,默认使用hostname发现集群如果不配置hostname的话,报错日志:Unresolved datanode registration: hostname cannot be resolved (ip=192.168.1.109, hostname=192.168.1.109)解决办法在namenode的hdfs-site.xml 里面添加<property> <name>dfs.namenode.datanode.registrati
原创
114阅读
0评论
0点赞
发布博客于 7 月前

ES failed shard on node[XXX]: failed recovery, failure RecoveryFailedException XXX Too many openfile

今天集群挂掉了,状态一直是red,恢复节点之后,开始恢复分片数据,一直都很慢。直到所有分片都停止分配,但是此时集群状态还是red。原因是:某节点上的分片尝试恢复5次没有成功,然后就丢弃不管。导致该分片无法恢复。解决办法:POST /_cluster/reroute?retry_failed=true重新恢复失败的分片,一会集群就恢复为green。...
原创
149阅读
0评论
0点赞
发布博客于 7 月前

Spark Streaming(四)kafka搭建(单节点,单broker)

下载Kafka我使用的版本是kafka_2.11-2.0.1.tgz解压:tar -xvf kafka_2.11-2.0.1.tgz -C ~/app/添加至系统环境变量中:配置Kafka查看并修改config下面的server.properties:# 相当于存放数据的容器broker.id=0log.dirs=/home/iie4bu/app/tmp/kafka-logszookeeper.connect=localhost:2181启动kafka一个server相当于一个br
原创
51阅读
0评论
0点赞
发布博客于 7 月前

Spark Streaming(三)zookeepe搭建

下载Zookeeper首先去CDH下载,zookeeper-3.4.5-cdh5.15.1,然后解压,并添加至环境变量:在目录zookeeper-3.4.5-cdh5.15.1/conf下,复制一份zoo_sample.cfg修改为zoo.cfg,修改内容:dataDir=/home/iie4bu/app/tmp/zookeeper启动zookeeper查看zookeeper:后台进程显示QuorumPeerMain表示zookeeper成功启动了。...
原创
29阅读
0评论
0点赞
发布博客于 7 月前

Azkaban通过API动态传递参数

需求目前有一个普通的java process作业,java 内容如下:public class GenerateShell { public static void main(String[] args) throws FileNotFoundException { System.out.println("参数为:" + args[0]); System.exit(0); }}job如下:type=javaprocessXms=1024MXm
原创
440阅读
2评论
0点赞
发布博客于 7 月前

Spark Streaming(二)Flume

现状分析如何解决我们的数据从其他的server上移动到Hadoop之上脚本shell cp到Hadoop集群的机器上,然后使用hadoop fs -put命令传到hadoop上【问题:1.这种方法如何做监控,2.文本数据的传输对于磁盘的开销非常大 3. 必须要指定一个间隔的时间,比如每隔1分钟拷贝一次,这样时效性不好 4. 如何做容错和负载均衡】使用Flume。容错、负载均衡、高延迟、压缩在flume中都有很好的解决。只需要写config就可以了Flume概述Flume is a dis
原创
42阅读
0评论
0点赞
发布博客于 8 月前

Spark Streaming(一)概述

需求统计主站每个(指定)课程访问的客户端、地域信息分布地域:IP转换客户端: useragent获取===> 如上两个操作:采用(Spark/MapReduce)的方式进行统计实现步骤:课程编号、ip信息、useragent进行相应的统计分析操作:MapReduce/Spark项目架构日志收集:Flume离线分析:MapReduce/Spark统计结果图形化展示问题按小时级别统计没问题如果按秒级进行统计,MapReduce则不现实,MapReduce时效性不好,处理时间较长
原创
29阅读
0评论
0点赞
发布博客于 8 月前

python3+Scrapy爬虫入门

创建项目scrapy startproject douban红框中是指出创建一个新爬虫。创建爬虫cd qunarscrapy genspider girls https://www.douban.com/group/641424/自此,我们的项目算是基本创建好了,其中“girls”是指爬虫的名称,“https://www.douban.com/group/641424/”爬虫的域名。不过为了方便我们项目启动,可以在项目中新建一个entrypoint.py文件,文件内容如下:from
原创
72阅读
0评论
0点赞
发布博客于 8 月前

网络安全-思维导图

原创
107阅读
0评论
1点赞
发布博客于 8 月前

计算机网络-基本概念(11)【应用层】

实时流式协议RTSP和RTMP共同点:RTSP RTMP HTTP都是在应用层。区别:RTSP+RTP主要用于IPTV,原因是传输数据使用的是UDP,在网络环境比较稳定的情况下,传输效率是比较高的;RTMP主要用于互联网音视频传输,它使用的是TCP传输,因为互联网环境相对较差,采用RTMP保证了视频的传输质量,但是其传输延迟相对较高,传输效率相对较低。librtmp是RTMP协议的实现,可以使用librtmp来实现协议的解析和数据的收发。直播服务器可以基于nginx+rtmp实现;直播客户端
原创
119阅读
0评论
0点赞
发布博客于 8 月前

计算机网络-基本概念(10)【传输层】TCP运输连接管理

三次握手A主动建立连接。发送SYN=1,seq=x,进入SYN-SENT(同步已发送)状态。B收到请求,同意建立连接,则向A发送确认。发送SYN=1,ACK=1,seq=y,ack=x+1。进入SYN-RCVD状态。A收到B的确认后,还要向B给出确认。发送ACK=1,seq=x+1,ack=y+1。...
原创
93阅读
0评论
0点赞
发布博客于 8 月前

网络安全-Internet安全体系结构

名称攻击防御物理层1. 窃听 2. 回答(重放)3. 插入 4. 拒绝服务
原创
281阅读
0评论
0点赞
发布博客于 8 月前

网络安全-防火墙与入侵检测系统

防火墙效率吞吐量:指防火墙在不丢失数据包的情况下能达到的最大的转发数据报的速率。时延:能够衡量出防火墙处理数据的快慢。丢包率:在特定负载下,指应由网络设备传输,但由资源耗尽而丢弃帧的百分比。背对背:指从空闲状态开始,已达到传输介质最小合法间隔极限的传输速率发送相当数量的固定长度的帧,当出现第一个帧丢失时所发送的帧数。并发连接数:指穿越防火墙的主机之间或主机与防火墙之间能同时建立的最大连接数,并发连接数的测试主要用来测试被防火墙建立和维持TCP连接的性能。防火墙分类1. 包过滤防火墙是防火
原创
453阅读
0评论
0点赞
发布博客于 8 月前

网络安全-漏洞扫描

漏洞扫描方法名称方法优点缺点ICMP 扫射使用ICMP回显请求轮训目标主机使用简单速度较慢,如果目标关闭了对ICMP回显请求的响应,就不能被发现广播ICMP发送ICMP回显请求到目标网络的网络地址或广播地址使用简单,速度比ICMP扫射快不能发现Windows主机,如果目标关闭了对ICMP回显请求的响应,就不能被发现,可能造成扫描者的DoS非回显ICMP(例如ICMP时间戳请求)发送其他类型的ICMP报文到目标主机不受目标组织ICMP回显请求的影响不同操
原创
195阅读
0评论
0点赞
发布博客于 8 月前

网络安全-互联网(网络层、传输层、应用层)使用的安全协议

网络层安全协议IPsec我们经常使用的虚拟专用网(某PN),在某PN中传送的信息都是经过加密的,而IPsec就是提供的这个服务。IPsec并不是一个单一协议,而是能够在IP层提供互联网通信安全的协议族。IPsec并没有限定用户必须使用何种特定的加密和鉴别算法。实际上,IPsec是个框架,它允许通信双方选择合适的算法和参数(例如:密钥长度)。为了保证互操作性,IPsec还包含了一套加密算法,所有IPsec的实现都必须使用。IPsec协议族中的协议可划分为一下三个部分:IP安全数据报的两个协议:鉴别
原创
732阅读
0评论
2点赞
发布博客于 8 月前

SSL/TLS协议运行机制的概述

1. 作用不使用SSL/TLS的HTTP通信,就是不加密的通信。所有信息明文传播,带来了三大风险:(1)窃听风险(eavesdropping):第三方可以获知通信内容。(2)篡改风险(tampering):第三方可以修改通信内容。(3)冒充风险(pretending):第三方可以冒充他人身份参与通信。SSL/TLS协议是为了解决这三大风险而设计的,希望达到:(1) 所有信息都是加密传播,第三方无法窃听。(2) 具有校验机制,一旦被篡改,通信双方会立刻发现。(3) 配备身份证书,防止身份被冒充
转载
71阅读
1评论
0点赞
发布博客于 8 月前

计算机网络-思维导图(6)应用层

原创
140阅读
0评论
0点赞
发布博客于 8 月前

计算机网络-基本概念(9)【传输层】TCP拥塞控制 【网络层】拥塞避免

TCP拥塞控制对网络中某一资源的需求超过了该资源(带宽、交换节点中的缓存、处理机)所能提供的可用部分。防止过多的数据注入网络中,方式路由器或两路过载,是属于全局性的过程,包括主机、路由器、链路等设备。TCP流量控制让发送方的发送速率不要太快,要让接收方来得及接收。是点对点通信量的控制,接收端控制发送端,抑制发送端发送数据速率。监测网络拥塞的方法缺少缓存空间而被丢弃的分组的百分数平均队列长度超时重传的分组数平均分组时延分组时延的标准差在路由器转发的分组中保留一个比特,表示网络中有没有拥塞
原创
75阅读
0评论
0点赞
发布博客于 8 月前

计算机网络-思维导图(5)传输层

原创
130阅读
0评论
0点赞
发布博客于 8 月前

计算机网络-基本概念(8)【网络层】集线器、网桥和路由器的区别

路由器:可以互联两个不同网络层协议的网段。网桥、交换机:可以互联两个物理层和链路层不同的网段(交换机的每一个端口,都是一个冲突域)。集线器:直通设备,傻瓜式【来什么就转发什么】设备能否隔离冲突域能否隔离广播域物理层【傻瓜】(中继器、集线器)×√链路层【路人】(网桥、交换机)√×网络层【大佬】(路由器)√√有一个广播分组进入局域网中,不管有没有交换机或网桥,所有的主机都是可以收到的,都可以根据交换机的所有端口转发出去,因此链路层设备不能隔离广播域。而
原创
118阅读
0评论
0点赞
发布博客于 8 月前

计算机网络-基本概念(7)【网络层】-多协议标记交换MPLS

MPLS利用面向连接技术,使每个分组打上标记(小整数),当分组到达交换机(即标记交换路由器)时,交换机读取分组的标记,并用标记值来检索分组转发表。这样就比查找路由表转发分组块的多。MPLS并没有取代IP,而是作为一种IP增强技术,广泛用于互联网。特点:支持面向连接的服务质量支持流量工程,平衡网络负载有效的支持某PN工作过程传统方式分组每到一个路由器,必须查路由表,用“最大前缀匹配”找到下一跳IP地址,网络很大时,查找路由表要花费大量时间,还会出现分组丢失,传输时延增大,服务质量下降。M
原创
110阅读
0评论
0点赞
发布博客于 8 月前

计算机网络-基本概念(6)【网络层】-某PN和NAT

虚拟专用网某PN可以解决IP地址紧缺,机构申请的IP小于机构的主机。同时出于安全,机构内不需要把所有主机接入外网。想个较远建立A和B专用网,每一个场所至少有一个路由器具有合法的全球IP。路由器R1 R2在专用网内部网络的接口地址则是专用网的本地地址。某PN的分类内联网某PN:A,B的内部网络所构成的虚拟专用某PN,A,B为同一机构。外联网某PN:需要有某些外部机构参加进来。远程接入某PN:很多流动员工在外地工作,可通过某PN然健建立通道。网络地址转换NAT专用网内部已经分配到本地IP,
原创
87阅读
0评论
0点赞
发布博客于 8 月前

计算机网络-基本概念(5)【网络层】-IP多播

可以大大节约网络资源。多播路由器在转发分组时,需要把收到的分组复制成多个副本,分别下发到下面的R1R2路由器,当分组到达目的局域网时,由于局域网具有硬件多播功能,因此不需要复制分组,多播成员就会收到分组。多播数据报目的地址不能写目的主机的IP,而是多播组的标识符【D类地址】不产生ICMP差错报文,ping后面如果键入多播地址,永远收不到响应。两种协议网际组管理协议IGMP:让连接在本局域网上的多播路由器知道本局域网上是否有主机参加或退出某个多播组多播路由选择协议:具体完成多播任务。IGMP
原创
91阅读
0评论
0点赞
发布博客于 8 月前

计算机网络-基本概念(4)【网络层】-IPv4向IPv6过渡

向IPv6过渡只能采用逐步演进的办法。双协议栈(源目的地址不变)是一部分主机(或路由器)装有双协议栈一个IPv4和一个IPv6。因此双协议栈主机(或路由器)既能够和IPv6的系统通信,又能和IPv4系统通信。与IPv6系统通信时采用IPv6地址,与IPv4系统通信时采用IPv4地址。需要进行首部转换。如何知道目的主机是IPv4还是IPv6?可以通过DNS进行查询。缺点:IPv4转成IPv6时,首部某些字段无法回复,造成丢失。隧道技术(源目的地址重新封装)IPv6进入IPv4前,将IPv6数据报作
原创
60阅读
0评论
0点赞
发布博客于 8 月前

计算机网络-基本概念(3)【网络层】-路由选择协议

内部网关协议RIP分布式基于距离向量的路由选择协议,优点是实现简单。使用UDP方式发送,RIP是应用层协议RIP要求网络中的每一个路由器都要维护从它自己到其他每一个目的网络的距离纪录。RIP允许一条路径最多只能包含15个路由器,因此RIP只能适用于小型网络。特点仅和相邻路由器交换信息。【和谁交换】交换的信息是当前路由器的全部信息。【交换什么信息】按固定的时间间隔交换路由信息。【什么时候交换】RIP 协议对于好消息传送得快,坏消息传送得慢内部网关协议OSPF分布式的链路状态协..
原创
82阅读
0评论
0点赞
发布博客于 8 月前

计算机网络-基本概念(2)【网络层】-网际控制报文协议ICMP

为了更有效的转发IP数据报和提高交付成功的机会,在网络层使用了网际控制报文协议ICMP。ICMP允许主机或路由器报告差错情况和提供有关异常情况的报告。差错报告报文终点不可达:使用traceroute无法交付时间超过:TTL=0参数问题:首部字段有问题改变路由:有更好的路由询问报文回送请求或回答:ping时间戳请求或回答...
原创
64阅读
0评论
0点赞
发布博客于 8 月前

计算机网络-基本概念(1)【网络层】-ARP协议以及数据传输过程

数据报从H1到H2的过程(简单过程)H1和H2分别对应两个用户。H1查看自己的路由表,查看H2是否就在本网络,如果是在同一网络,则直接交付。如果不是,把数据报发送给路由器R1,间接交付R1查看路由表后,发送给R2.…一系列过程R5知道自己是和H2连接,因此直接交付给H2。地址解析协议ARP一直一个机器(主机或路由器)的IP,通过ARP协议可以知道其对应的MAC硬件地址。每一个主机或路由器都有一个ARP告诉缓存。ARP中所存储的都是本局域网内的IP MAC映射表。情况一:主机A与主机B
原创
106阅读
0评论
0点赞
发布博客于 8 月前

计算机网络-思维导图(4)网络层

原创
193阅读
0评论
0点赞
发布博客于 8 月前

计算机网络-思维导图(3)数据链路层

原创
55阅读
0评论
0点赞
发布博客于 8 月前

计算机网络-思维导图(2)物理层

原创
54阅读
0评论
0点赞
发布博客于 8 月前

计算机网络-思维导图(1)概述

原创
78阅读
0评论
0点赞
发布博客于 8 月前

[早餐]鸡蛋煎饼

原材料鸡蛋2个、中筋面粉35g、水125g步骤面粉和水搅拌混合。(如果先放入鸡蛋的话,面粉不容易混合均匀)将鸡蛋液倒入。搅拌均匀放一点盐、葱花锅底擦油火不能太大,饼不能太厚,一分钟左右边边翘起,翻面稍微热一下就可以了。...
原创
37阅读
0评论
0点赞
发布博客于 9 月前

番茄蛋花汤

原材料香菜,西红柿,玉米淀粉,盐,白胡椒粉步骤香菜切碎西红柿两个切碎丁,把大块切小。(如果不嫌麻烦的话,可以先炒一下)水烧开,放入西红柿丁,小火煮开,西红柿煮软,把西红柿的味道煮到汤里两勺玉米淀粉,加水,加到汤中。打鸡蛋液,轻轻倒入锅中,同时用筷子轻轻搅开。关火,加入盐和白胡椒,加入一点香油和香菜。...
原创
36阅读
0评论
0点赞
发布博客于 9 月前

蛋炒饭

原材料米饭、鸡蛋、洋葱丁、胡萝卜丁、虾仁、白胡椒、玉米、青豆步骤两颗鸡蛋,与大米混合一起,大米不要太软,米饭与鸡蛋液充分混合虾仁,盐,白胡椒混合一起,加入一点淀粉,这样虾仁炒出来比较嫩锅中倒油,翻入洋葱和胡萝卜丁,煸炒之后翻入青豆和玉米,放盐入味,盛出热锅继续放入虾仁,小火轻炒,盛出放油,中火,油不是很热的时候,放入鸡蛋米饭,随着鸡蛋慢慢炒熟,米粒就颗粒分明了,撒一点盐,葱花,和上面的配菜。...
原创
130阅读
0评论
1点赞
发布博客于 9 月前

sed 删除windows下的CR/LF

sed -i 's/^M//g' file 在bash界面下,按住 Ctrl-V 然后按 Ctrl-M,就可以打出^M控制字符了
原创
106阅读
0评论
0点赞
发布博客于 9 月前

sublime3 离线安装 pretty json

需求我们要在内网环境下安装sublime3 的插件 pretty json步骤下载sublime3下载 Package Control.sublime-package将Package Control 拷贝至 sublime安装目录的Packages目录下下载pretty jsongit clone https://github.com/dzhibas/SublimePrettyJson.git "Pretty json"cd Pretty JSONgit checkout st3
原创
247阅读
0评论
1点赞
发布博客于 9 月前

azkaban安装编译3.86 教程

Azkaban is a batch workflow job scheduler created at LinkedIn to run Hadoop jobs. Azkaban resolves the ordering through job dependencies and provides an easy to use web user interface to maintain and track your workflows.特点兼容任何版本的hadoop。(Oozie依赖于hadoo.
原创
66阅读
0评论
0点赞
发布博客于 9 月前

本地运行hadoop

本地开发使用windows Intellij,没有搭建hadoop,搭建教程使用:这个本地使用pom.xml添加依赖:<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http
原创
63阅读
0评论
0点赞
发布博客于 9 月前

git常用命令

创建分支$ git checkout -b devSwitched to a new branch 'dev'git checkout命令加上-b参数表示创建并切换,相当于以下两条命令:$ git branch dev$ git checkout devSwitched to branch 'dev'查看分支用git branch命令查看当前分支:$ git branch* dev master这是会看到master和dev,而且dev上会有一个星号,这个时候dev是一个本地
原创
32阅读
0评论
0点赞
发布博客于 9 月前

使用sed修改最后一行数据

需求原始数据文件内容如下:{"name":"vincent","age":"12"}{"name": "tom", "age": "12"}{"name": "jerry", "age": "13"}{"name": "catlina", "age": "22"}{"name": "sofia", "age": "14"}希望变成下面的格式:[{"name":"vincent","age":"12"},{"name": "tom", "age": "12"},{"name": "jer
原创
912阅读
0评论
0点赞
发布博客于 9 月前

sed行首行尾添加字符

用sed命令在行首或行尾添加字符的命令有以下几种:假设处理的文本为test.file在每行的头添加字符,比如"HEAD",命令如下:sed ‘s/^/HEAD&/g’ test.file在每行的行尾添加字符,比如“TAIL”,命令如下:sed ‘s/$/&TAIL/g’ test.file运行结果如下图:几点说明:1."^“代表行首,”$"代表行尾2.'s/$/&TAIL/g’中的字符g代表每行出现的字符全部替换,如果想在特定字符处添加,g就有用了,否则只会替换
原创
131阅读
0评论
0点赞
发布博客于 9 月前

ubuntu apt-get 默认下载路径

使用apt-get install 命令时默认下载到/var/cache/apt/archives路径下,sudo apt-get clean命令可以删除该路径下的下载的deb包
原创
391阅读
0评论
0点赞
发布博客于 9 月前

FastDFS教程

FastDFS简介FastDFS为互联网量身定制,充分考虑了冗余备份、负载均衡、线性扩容等机制,并注重高可用、高性能等指标,使用FastDFS很容易搭建一套高性能的文件服务器集群提供文件上传、下载等服务。FastDFS服务端有两个角色:跟踪器(tracker)和存储节点(storage)。跟踪器主要负责调度工作,在访问上起负载均衡的作用。存储节点存储文件,完成文件管理的所有功能,同时Fas...
原创
277阅读
0评论
1点赞
发布博客于 10 月前

springboot接收JSONArray

请求参数如下:[ { "name": "jack" }]在springboot后端程序中要接收这种参数方式如下: @PostMapping("/test") public void test(@RequestBody JSONArray data){ System.out.println(data); }...
原创
1361阅读
0评论
0点赞
发布博客于 10 月前

Spark SQL 加载数据

第一种方式:Spark SQL可以将数据文件加载成RDD方式,然后将RDD转成DataFrame或者DataSet。第二种方式:从本地或者Cloud(hdfs hive S3等)将文件加载成RDD首先打开控制台,输入命令打开spark-shell:./spark-shell --master local[2] --jars /home/iie4bu/software/mysql-conne...
原创
83阅读
0评论
0点赞
发布博客于 10 月前

吃多了拉,就是队列. 吃多了吐,就是栈. 循环队列?

 
发布Blink于 10 月前

Mysql字符集之utf8和utf8mb4的使用问题

项目中使用Mysql数据库保存emoji表情时????会报错:Caused by: java.sql.SQLException: Incorrect string value: '\xF0\x9F\x98\x8D' for column 'name'原因是UTF-8编码有可能是两个、三个、四个字节。Emoji表情或者某些特殊字符是4个字节,而Mysql的utf8编码最多3个字节,所以数据插不进去。...
原创
44阅读
0评论
0点赞
发布博客于 10 月前

ubuntu Mysql乱码解决

插入数据时,出现繁体字和其他字符的乱码。查看编码:mysql> show variables like "%colla%";+----------------------+-------------------+| Variable_name | Value |+----------------------+------------------...
原创
33阅读
0评论
0点赞
发布博客于 10 月前