数据分片 概念: 按特定方式拆分,分散存放到多个数据库服务器上,达到负载效果 垂直分割:单个表切换成多个表,按业务类别分散到不同数据库. 水平分割:将表里的多条记录切分到不同数据库.
搭建数据分片服务器 MyCAT
基于JAVA的分布式 适合大量写入数据的存储需求 分片 高可用集群 读写分离 都可以使用MYCAT 支持MYSQL Oracle Sqlserver Mongodb
分片规则: 枚举法 固定分片 范围约定 求模法 日期列分区法 通配取模 ASCII码求模通配 编程指定 字符串拆分hash 一致性hash Mycat软件介绍: 工作过程图一 工作过程图二
一、配置mycat环境
拓扑结构、
IP规划
二、开始搭建mycat分片服务器(56操作)
步骤一:公共配置 1)关闭防火墙和selinux,配置yum源(系统源),这里不再操作 2)把53,54,55还原成独立数据库服务器,56主机下载mycat 软件包 需要的软件包:Mycat-server-1.6 这个软包需要三台数据库服务器
56]# tar -zxvf Mycat-server-1.6-linux.tar.gz
56]# mv mycat/ /usr/local
56 ]# cd /usr/local/mycat/
56 mycat]# ls
bin catlet conf lib logs version.txt
配置文件 修改配置文件图一 3)在53(主机)54(主机)和55(主机)上面创建db3、db2、db1库和授权一个用户。
53]# mysql -u root [email protected]
mysql> create database db3;
Query OK, 1 row affected (0.00 sec)
mysql> grant all on * . * to roota@"%" identified by "[email protected] ";
52]# mysql -u root [email protected]
mysql> create database db2;
Query OK, 1 row affected (0.00 sec)
mysql> grant all on * . * to roota@"%" identified by "[email protected] ";
51]# mysql -u root [email protected]
mysql> create database db1;
Query OK, 1 row affected (0.00 sec)
mysql> grant all on * . * to roota@"%" identified by "[email protected] ";
4)修改数据库的配置文件(53、54、55) 注意:1代表不区分表名的大小写,0为区分大小写 主机c1上面:
53]# vim /etc/my.cnf
[mysqld]
lower_case_table_names=1 //表名忽视大小写
53]# systemctl restart mysqld
54]# vim /etc/my.cnf
[mysqld]
lower_case_table_names=1 //表名忽视大小写
54]# systemctl restart mysqld
55]# vim /etc/my.cnf
[mysqld]
lower_case_table_names=1 //表名忽视大小写
55]# systemctl restart mysqld
5)在56主机上面安装JDK和mycat
56]# rpm -qa | grep -i jdk //安装自带的即可 java-1.8.0-openjdk-1.8.0.131-11.b12.el7.x86_64 java-1.8.0-openjdk-headless-1.8.0.131-11.b12.el7.x86_64 copy-jdk-configs-2.2-3.el7.noarch 56]# yum -y install java-1.8.0-openjdk 56]# cd mysql/ 56mysql]# tar -xf Mycat-server-1.4-beta-20150604171601-linux.tar.gz //免安装,解压即可使用 56mysql]# mv mycat/ /usr/local/ 56mysql]# ls /usr/local/mycat/ bin catlet conf lib logs version.txt 56mysql]# cd /usr/local/mycat/ 56mycat]# ./bin/mycat --help Usage: ./bin/mycat { console | start | stop | restart | status | dump } 修改配置文件图二 (图片上的修改仅供查看,不做修改) 修改配置文件图三 (图片上的修改仅供查看,不做修改) 修改配置文件图四 (图片上的修改仅供查看,不做修改)
修改配置文件图五 (图片上的修改仅供查看,不做修改) 6)56主机上修改配置文件。
56]# cd /usr/local/mycat/conf
56conf]# vim schema.xml
7 //dataNode="dn1,dn2,dn3"代表数据库,有几个数据库就写几个dn....。
8
9 //dataNode="dn1,dn2,dn3"代表数据库,有几个数据库就写几个dn....。
10 //dataNode="dn1,dn2,dn3"代表数据库,有几个数据库就写几个dn....。
12 //dataNode="dn1,dn2,dn3"代表数据库,有几个数据库就写几个dn....。
14 //dataNode="dn1,dn2,dn3"代表数据库,有几个数据库就写几个
16 //dataNode="dn1,dn2,dn3"代表数据库,有几个数据库就写几个
..........
.........
27 //在53创建的数据库
28 //在54创建的数据库
29 //在55创建的数据库
//代表一个数据库服务器
31
33 select user()
34 //数据库服务器的IP、端口、用户、密码
36
37
38
39 // name="localhost54"代表主机54,只是一个标识。
41 select user()
42
44
45
46
47 // name="localhost55"代表主机53,只是一个标识。
49 select user()
50 //数据库的IP、用户、密码
52
53
7)添加PATH路径(可不用)
56 conf]# export PATH=/usr/local/mycat/bin:$PATH
56 conf]# echo "PATH=/usr/local/mycat/bin:$PATH" >> /etc/profile
56 conf]# source /etc/profile
56 conf]# echo $PATH
/usr/local/mycat/bin:/usr/local/mycat/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
56 conf]# which mycat
/usr/local/mycat/bin/mycat
8)启动服务并查看端口
56 conf]# /usr/local/mycat/bin/mycat start
Starting Mycat-server...
56 conf]# netstat -antup | grep :8066
tcp6 0 0 :::8066 :::* LISTEN 6421/java
[root@mycat conf]# ps -C java
PID TTY TIME CMD
6421 ? 00:00:04 java
9)客户端验证:
客户端50连接分片服务器访问数据
50]# mysql -h192.168.4.56 -P8066 -u root -p123456;
mysql> show databases;
mysql> use testdb;
mysql> create table employee(
> ID int primary key auto_increment,
> sharding_id int,
> name char(30),
> age int);
mysql> desc employee;
mysql> insert into employee(sharding_id,name,age) values(10000,"bob",19); //插入的数据库存储在53
mysql> insert into employee(sharding_id,name,age) values(10010,"fanny",19); //插入的数据库存储在54
select * from employee;
10)修改56主机分片规则配置文件,让数据库可以分片存储到服务55里 56]# /usr/local/mycat/bin/mysqlcat stop 56]# vim /usr/local/mycat/conf/partition-hash-int.txt 10000=0 10010=1 10020=2
partition-hash-int.txt //设置分片规则的配置文件,规则为枚举算法。 枚举类型算法: 10000=0 //代表数据存储在数据服务器53 10010=1 //代表数据存储在数据服务器54 10020=2 //代表数据存储在数据服务器55
56]# /usr/local/mycat/bin/mysqlcat start
56]# ss -unptl | grep 8066
50]# mysql -h192.168.4.56 -P8066 -u root -p123456
mysql> create table company(ID int primary key auto_increment,name char(30));
Query OK, 0 rows affected (0.77 sec)
mysql> desc company;
+-------+----------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+----------+------+-----+---------+----------------+
| ID | int(11) | NO | PRI | NULL | auto_increment |
| name | char(30) | YES | | NULL | |
+-------+----------+------+-----+---------+----------------+
55 ~]# mysql -u root [email protected]
mysql> use db1;
Database changed
mysql> show tables;
+---------------+
| Tables_in_db1 |
+---------------+
| company |
| employee |
+---------------+
2 rows in set (0.00 sec)
53 ~]# mysql -u root [email protected]
mysql> use db2;
Database changed
mysql> show tables;
+---------------+
| Tables_in_db2 |
+---------------+
| company |
| employee |
+---------------+
2 rows in set (0.00 sec)55 ~]# mysql -u root [email protected]
mysql> use db3;
Database changed
mysql> show tables;
+---------------+
| Tables_in_db3 |
+---------------+
| company |
| employee |
+---------------+
2 rows in set (0.00 sec)
11)创建表指定余数存储到数据库服务器
56]# mysql -h192.168.4.56 -u root -p123456
mysql> create table hotnews(id int,name char(30));
Query OK, 0 rows affected (0.98 sec)
mysql> insert into hotnews(id,name) values(10,"qq"),(8,"oo"),(12,"uu");
Query OK, 3 rows affected (0.37 sec)
55]# mysql -u root [email protected]
mysql> show tables;
+---------------+
| Tables_in_db1 |
+---------------+
| company |
| employee |
| employee02 |
| hotnews |
+---------------+
4 rows in set (0.00 sec)
mysql> select * from hotnews;
+------+------+
| id | name |
+------+------+
| 8 | oo |
+------+------+
1 row in set (0.00 sec)
54]# mysql -u root [email protected]
mysql> show tables;
+---------------+
| Tables_in_db2 |
+---------------+
| company |
| employee |
+---------------+
2 rows in set (0.00 sec)
mysql> select * from hotnews; ±-----±-----+ | id | name | ±-----±-----+ | 10 | qq | ±-----±-----+ 1 row in set (0.00 sec) 53]# mysql -u root [email protected] mysql> show tables; ±--------------+ | Tables_in_db3 | ±--------------+ | company | | employee | ±--------------+ 2 rows in set (0.00 sec)
mysql> select * from hotnews; ±-----±-----+ | id | name | ±-----±-----+ | 12 | uu | ±-----±-----+ 1 row in set (0.00 sec)
你可能感兴趣的:(MySQL数据库知识集,搭建mycat分片服务器)
2022年河南省高等职业教育技能大赛云计算赛项竞赛赛卷(样卷)
忘川_ydy
云计算 云计算 openstack kubernetes docker python k8s ansible
#需要资源(软件包及镜像)或有问题的,可私博主!!!#需要资源(软件包及镜像)或有问题的,可私博主!!!#需要资源(软件包及镜像)或有问题的,可私博主!!!第一部分:私有云任务1私有云服务搭建(10分)使用提供的用户名密码,登录竞赛用的云计算平台,按要求自行使用镜像创建两台云主机,创建完云主机后确保网络正常通信,然后按要求配置服务器。根据提供安装脚本框架,补充脚本完成OpenStack平台的安装搭
浪潮 M5系列服务器IPMI无法监控存储RAID卡问题.
Songxwn
硬件服务器 服务器 运维
简介浪潮的M5代服务器,可能有WebBMC无法查看存储RAID/SAS卡状态的情况,可以通过以下方式修改。修改完成后重启BMC即可生效。ESXiIPMITools使用:https://songxwn.com/ESXi8_IPMI/(Linux也可以直接使用)Linux/ESXiIPMITool下载:https://songxwn.com/file/ipmitoolWindows下载:https:/
unblock with ‘mysqladmin flush-hosts‘ 解决方法
祈祷平安,加油
数据库常见问题 oracle 数据库
MySqlHostisblockedbecauseofmanyconnectionerrors;unblockwith'mysqladminflush-hosts'解决方法环境:linux,mysql5.5.21错误:Hostisblockedbecauseofmanyconnectionerrors;unblockwith'mysqladminflush-hosts'原因:同一个ip在短时间内产
通俗易懂:MySQL中如何设置只读实例并确保数据一致性?
大龄下岗程序员
mysql java mysql spring
在MySQL中设置只读实例主要应用于构建高可用性和扩展性的数据库环境,通常是为了分担读取负载或者用于备份和灾难恢复。以下是创建MySQL只读实例并确保数据一致性的基本步骤:1.创建并配置只读实例-主从复制设置-首先,你需要有一个主数据库实例(Master)负责接收所有的写操作。-创建一个或多个从数据库实例(Slave),并将它们配置为主数据库的复制品。这通常通过设置主从复制(Replication
你有想删除的人生吗?(2022-10-10)
燕归来2021
中午遛弯清茶发信息给我:有本书不用看了,建议看作者的另一本。然后聊起她推给我的日剧《人生删除事务所》,我只看了一集,名字觉得很有意思,就问清茶有没有想删除的人生,她回:没有,这么平淡的日子。我:我也没有,这么精彩的人生,哈哈。虽是玩笑说,却也不完全瞎说。闺蜜性情平和佛性,我苦苦挣扎修行半靠子,她生来就有。由人生就聊到最近我追的李子勋,李老师的观点:心理学讲人性多讲道德少,讲究有效性非真实性,很多观
matlab按行读取txt文件数据集
地上悬河
matlab 开发语言
功能:使用Matlab按行读取txt文件,按照特定符号进行分割后加入数组中fid=fopen('coordinate.txt');%首先打开文本文件coordinate.txttemp=[]while~feof(fid)%while循环表示文件指针没到达末尾,则继续%每次读取一行,str是字符串格式str=fgetl(fid);%以','作为分割数据的字符,结果为cell数组s=regexp(st
C#中的PLINQ和LINQ的效率对比
搬砖的诗人Z
C# c# linq 开发语言
PLINQ(ParallelLINQ)和LINQ(LanguageIntegratedQuery)都是.NET框架中的功能,用于对集合进行查询和操作。它们之间的主要区别在于并行处理能力。LINQ:LINQ是一种用于在.NET应用程序中进行数据查询和操作的语言集成功能。它提供了一种统一的方式来查询各种数据源,如集合、数组、XML、数据库等。LINQ是在单线程环境中执行查询操作的,因此对于大型数据集或
npm 搭建 Vite 项目
渺小的虫子
viter 前端 javascript 开发语言
兼容性注意Vite需要Node.js版本>=12.0.0。1、使用npm安装Viter$npminitvite@latest使用npm初始化项目#npm6.xnpminitvite@latestmy-vue-app--templatevue#npm7+,需要额外的双横线:npminitvite@latestmy-vue-app----templatevue2、配置路由:npminstallvue-
Redis和MySQL的数据一致性问题思考
爱放火的安小妮
Redis MySQL 思考总结 redis mysql 数据库
Redis和MySQL的数据一致性问题思考最近有在反思自己工作。因为自己这边是面向业务的,而且是和商品数据相关的。所以我平时工作中涉及到的最多的就是MySQL和Redis的数据存储。像我们配置商品是把商品配置到MySQL,但是对外toC接口都是直接读取Redis的。所以自然而然就涉及到MySQL和Redis的数据一致性问题。下面就是聊聊我自己对于这个问题的一个思考吧。有问题或者有更好方案的朋友也希
3、JavaWeb-Ajax/Axios-前端工程化-Element
所谓远行Misnearch
# JavaWeb 前端 ajax elementui java 前端框架
P34Ajax介绍Ajax:AsynchroousJavaScriptAndXML,异步的JS和XMLJS网页动作,XML一种标记语言,存储数据,作用:数据交换:通过Ajax给服务器发送请求,并获取服务器响应的数据异步交互:在不重新加载整个页面的情况下,与服务器交换数据并实现更新部分网页的技术,例如:搜索联想、用户名是否可用的校验等等。同步与异步:同步:服务器在处理中客户端要处于等待状态,输入域名
docker怎么端口映射
Lance_mu
docker 容器 运维
1、默认固定的端口#Web服务器:WebApache或Nginx通常使用80端口HTTP:80HTTPS:443#数据库服务器MySQL:3306PostgreSQL:5432MongoDB:27017Redis:6379#邮件服务器SMTP:25POP3:110IMAP:143#其他服务SSH:22FTP:21DNS(域名解析):53代理服务器Squid:3128版本控制系统Git:9418(S
docker基础(一)
运维搬运工
容器-docker docker 容器 运维
相关概念介绍Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖到一个可移植的容器中,然后发布到任何流行的linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,互相之间不会有任何接口。Docker有几个重要概念:dockerfile,配置文件,用来生成dockerimagedockerimage,交付部署的最小单元docker命令与API,定义命令与接口,支持第三方系统集
新注册的阿里云账号有哪些优惠?阿里云新用户必看优惠大合集
阿里云最新优惠和活动汇总
很多用户看到阿里云各种活动中的云服务器、云数据库、企业邮箱等云产品都仅限新用户购买之后,都纷纷直接注册了阿里云新账号之后购买,其实,阿里云新用户不仅可以优惠购买活动中的各种云产品,还有很多优惠,下面是“阿里云最新优惠和活动汇总”整理汇总的阿里云新用户必看优惠大合集。新注册的阿里云账号在购买活动中的云产品之前,还有免费领云产品通用代金券、抽取无门槛代金券、免费试用云服务器和正式购买云服务器等阿里云产
掌握Flutter底部导航栏:畅游导航之旅
繁依Fanyi
xml json sql flutter 开发语言 前端 git
1.引言在移动应用开发中,底部导航栏是一种常见且非常实用的用户界面元素。它提供了快速导航至不同功能模块或页面的便捷方式,使用户可以轻松访问应用程序的各个部分。在Flutter中,底部导航栏也是一项强大的功能,开发者可以利用Flutter框架提供的丰富组件和灵活性,轻松实现各种样式和交互效果的底部导航栏。本文将深入探讨Flutter中底部导航栏的实现方法,从基础的结构搭建到高级功能的应用,带领读者逐
地缚少年花子君,一个小小的甜甜圈,源光看见了源辉内心的小秘密
ACGN安乐
大家好我是小安,很高兴又和大家见面了,话不多说我们直接进入正题,不知大家对日本动画《地缚少年花子君》中海鸥学院高等部二年级生,学生会的会长源辉了解多少呢?源辉从第一集中就已经登场,他是源光的哥哥,也是八寻宁宁的理想对象之一,源辉除了有学生这层身份之外和他的弟弟源光一样都是拔除师,也就是我们统称的除妖师,从表面来看源辉是个高颜值帅哥,脾气很好同时也有很多女孩子想做他的女朋友,但金无足赤人无完人大家也
[数据集][图像分类]河道污染分类数据集1923张4类别
FL1623863129
数据集 分类 数据挖掘 人工智能
数据集类型:图像分类用,不可用于目标检测无标注文件数据集格式:仅仅包含jpg图片,每个类别文件夹下面存放着对应图片图片数量(jpg文件个数):1922分类类别数:4类别名称:["lianghao","qingwei","yanzhong","zhongdu"]每个类别图片数:lianghao图片数:435qingwei图片数:423yanzhong图片数:577zhongdu图片数:487重要说明
webpack.prod.js(webpack生产环境配置文件)
门板_
webpack javascript 前端
生产环境:只打包不运行本地服务器对于在config目录下的webpack.prod.js1.在根目录下运行npxwebpack--config./config/webpack.prod.js2.在package.json文件中配置"build":"npxwebpack--config./config/webpack.prod.js"constpath=require('path')constESL
自动化测试 —— Pytest fixture及conftest详解
咖啡加剁椒③
软件测试 pytest 功能测试 软件测试 自动化测试 程序人生 职场和发展
前言fixture是在测试函数运行前后,由pytest执行的外壳函数。fixture中的代码可以定制,满足多变的测试需求,包括定义传入测试中的数据集、配置测试前系统的初始状态、为批量测试提供数据源等等。fixture是pytest的精髓所在,类似unittest中setup/teardown,但是比它们要强大、灵活很多,它的优势是可以跨文件共享。一、Pytestfixture1.pytestfix
高阶SQL语句(二)
www.mcb.com
数据库 mysql
一子查询也被称作内查询或者嵌套查询,是指在一个查询语句里面还嵌套着另一个查询语句。子查询语句是先于主查询语句被执行的,其结果作为外层的条件返回给主查询进行下一步的查询过滤。①子语句可以与主语句所查询的表相同,也可以是不同表②子语句中的sql语句是为了,最后过滤出一个结果集,用于主语句的判断条件③in:将主表和子表关联/连接的语法环境准备:mysql>usekgc_ky35;Readingtable
Python Flask 使用数据库
安果移不动
python flask 开发语言
pipinstallflask_sqlalchemy官方文档:Flask-SQLAlchemy—Flask-SQLAlchemyDocumentation(3.1.x)为了不报错也需要导入另外两个库#pipinstallflask_sqlalchemy#pipinstallmysqlclient完整代码importosfromflaskimportFlaskfromflask_sqlalchemy
Qlib-Server部署
宋志辉
flask python qlib 量化
Qlib-Server部署介绍构建Qlib服务器,用户可以选择:一键部署Qlib服务器逐步部署Qlib服务器一键部署Qlib服务器支持一键部署,用户可以选择以下两种方法之一进行一键部署:使用docker-compose部署在Azure中部署使用docker-compose进行一键部署按照以下步骤使用docker-compose部署Qlib服务器:安装docker,请参考Docker安装。安装doc
第七章 索引及执行计划,存储引擎
执笔为剑
# MySQL运维篇 编辑器 mysql
第七章索引及执行计划,存储引擎1,索引及执行计划1,作用:提供类似书目录的作用,目的是优化查询2,所用的种类(根据算法)B树索引Hash索引R树FulltextGIS3,B树基于不同的查找算法分类介绍B-tree:在范围查询方面提供了更好的性能(>showengines;#存储引擎作用在表上,不同的表可能有不同的存储引擎mysql>select@@default_storage_engine;#查
Nginx服务
老伙子53
nginx 运维
Nginx服务一、什么是Nginx1、概念Nginx是一个高性能的开源的HTTP和反向代理服务器,以及邮件(IMAP/POP3)代理服务器。它最初由IgorSysoev创建,并于2004年首次公开发布。Nginx的主要特点包括高性能、低内存占用、高并发处理能力以及高度的可靠性。2、特点高性能Nginx被设计成高性能的服务器软件,能够处理大量并发连接和高流量的请求。它采用了事件驱动的架构,使用异步I
Thinkphp - 详细实现网站系统登录功能,附带 Mysql 数据库设置、Web 前端展示界面、信息校验等(详细代码,即设计过程)
王佳斌
+ Thinkphp mysql 前端 数据库
前言登录功能,是我们几乎开发每个系统都必须的模块。登录功能设计思路,主要包括几个方面。用户输入网址展示登录页面用户输入用户名,密码等点击登录进行信息校验校验通过之后,记录用户登录信息,跳转指定页面用户校验失败,提示失败信息页面目录具体功能实现为了快速搭建可用、美观的页面,我们采用一个比较成熟的前端框架Bootstrap。下面我们到Bootstrap的官网Bootsrap官网下载bootstrap。
设置mysql 数据库和表 的编码方式UTF-8
盖盖衍上
中间件 数据库 mysql oracle
要设置MySQL数据库表和字段的编码方式为UTF-8,可以使用下面的SQL语句:1.设置数据库默认编码为UTF-8:ALTERDATABASEyour_database_nameCHARACTERSETutf8mb4COLLATEutf8mb4_unicode_ci;2.创建表时指定编码为UTF-8:CREATETABLEyour_table_name(column1VARCHAR(100)CHA
【二】【设计模式】建造者模式
妖精七七_
设计模式 设计模式 建造者模式
建造者模式的引入//C10_1.cpp#include#include"SystemConfig.h"intmain(){SystemConfigconfig("mysql://127.0.0.1/","xiaomu","xiaomumemeda","redis://127.0.0.1/","xiaomuredis","xiaomuredispw","kafka://127.0.0.1","xia
Linux(centos7)部署hive
灯下夜无眠
Linux linux hive 运维 dbeaver hive客户端
前提环境:已部署完hadoop(HDFS、MapReduce、YARN)1、安装元数据服务MySQL切换root用户#更新密钥rpm--importhttps://repo.mysql.com/RPM-GPG-KEY-mysqL-2022#安装Mysqlyum库rpm-Uvhhttp://repo.mysql.com//mysql57-community-release-el7-7.noarch.
RNA-seq数据分析_未完成
子诚之
组学数据分析 数据分析
目录基础分析1.质控(reads)2.比对3.质控(alignment)4.定量5.样本合并差异表达1.质控(cohort)2.差异分析3.可视化(差异)富集分析肿瘤免疫1.免疫组库2.免疫浸润3.免疫响应4.新抗原预测微生物组参考本文主要覆盖了肿瘤样本bulkRNA-seq数据常见的分析步骤,并从实践角度出发,较为具体地介绍了每一步骤依赖的工具和数据集。另外,尽管本文适用于肿瘤样本,但其中的一些
mysql 常见数据表操作
天狼1222
mysql系列 mysql 数据库
前面介绍了数据库表的基本操作。把常用的做一个汇总。时间久了,记不得完整的语法了,再打开一看,就清楚了。1,表操作1,建表+注释CREATETABLEstudent(idINTPRIMARYKEYAUTO_INCREMENTCOMMENT'学号',nameVARCHAR(200)COMMENT'姓名',ageINTCOMMENT'年龄')COMMENT='学生表'2,修改注释--修改表注释-ALTE
通俗易懂:描述MySQL中SET和ENUM数据类型的异同。
大龄下岗程序员
mysql java mysql spring
MySQL中的SET和ENUM数据类型均用于限制字段可接受的值范围,但它们的设计用途和功能特性有所不同:SET类型-SET是一种集合类型,它可以存储一组预定义的离散值,并且在一个SET字段中可以同时存储多个值。-SET字段内的值是互斥的,即同一时间不会存在相同的元素两次,但可以有多个不同的元素组合。-值之间的分隔通常用逗号(,)或其他指定字符。-SET类型的字段最大可以容纳64个不同的成员值。-在
开发者关心的那些事
圣子足道
ios 游戏 编程 apple 支付
我要在app里添加IAP,必须要注册自己的产品标识符(product identifiers)。产品标识符是什么?
产品标识符(Product Identifiers)是一串字符串,它用来识别你在应用内贩卖的每件商品。App Store用产品标识符来检索产品信息,标识符只能包含大小写字母(A-Z)、数字(0-9)、下划线(-)、以及圆点(.)。你可以任意排列这些元素,但我们建议你创建标识符时使用
负载均衡器技术Nginx和F5的优缺点对比
bijian1013
nginx F5
对于数据流量过大的网络中,往往单一设备无法承担,需要多台设备进行数据分流,而负载均衡器就是用来将数据分流到多台设备的一个转发器。
目前有许多不同的负载均衡技术用以满足不同的应用需求,如软/硬件负载均衡、本地/全局负载均衡、更高
LeetCode[Math] - #9 Palindrome Number
Cwind
java Algorithm 题解 LeetCode Math
原题链接:#9 Palindrome Number
要求:
判断一个整数是否是回文数,不要使用额外的存储空间
难度:简单
分析:
题目限制不允许使用额外的存储空间应指不允许使用O(n)的内存空间,O(1)的内存用于存储中间结果是可以接受的。于是考虑将该整型数反转,然后与原数字进行比较。
注:没有看到有关负数是否可以是回文数的明确结论,例如
画图板的基本实现
15700786134
画图板
要实现画图板的基本功能,除了在qq登陆界面中用到的组件和方法外,还需要添加鼠标监听器,和接口实现。
首先,需要显示一个JFrame界面:
public class DrameFrame extends JFrame { //显示
linux的ps命令
被触发
linux
Linux中的ps命令是Process Status的缩写。ps命令用来列出系统中当前运行的那些进程。ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻的那些进程,如果想要动态的显示进程信息,就可以使用top命令。
要对进程进行监测和控制,首先必须要了解当前进程的情况,也就是需要查看当前进程,而 ps 命令就是最基本同时也是非常强大的进程查看命令。使用该命令可以确定有哪些进程正在运行
Android 音乐播放器 下一曲 连续跳几首歌
肆无忌惮_
android
最近在写安卓音乐播放器的时候遇到个问题。在MediaPlayer播放结束时会回调
player.setOnCompletionListener(new OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mp) {
mp.reset();
Log.i("H
java导出txt文件的例子
知了ing
java servlet
代码很简单就一个servlet,如下:
package com.eastcom.servlet;
import java.io.BufferedOutputStream;
import java.io.IOException;
import java.net.URLEncoder;
import java.sql.Connection;
import java.sql.Resu
Scala stack试玩, 提高第三方依赖下载速度
矮蛋蛋
scala sbt
原文地址:
http://segmentfault.com/a/1190000002894524
sbt下载速度实在是惨不忍睹, 需要做些配置优化
下载typesafe离线包, 保存为ivy本地库
wget http://downloads.typesafe.com/typesafe-activator/1.3.4/typesafe-activator-1.3.4.zip
解压r
phantomjs安装(linux,附带环境变量设置) ,以及casperjs安装。
alleni123
linux spider
1. 首先从官网
http://phantomjs.org/下载phantomjs压缩包,解压缩到/root/phantomjs文件夹。
2. 安装依赖
sudo yum install fontconfig freetype libfreetype.so.6 libfontconfig.so.1 libstdc++.so.6
3. 配置环境变量
vi /etc/profil
JAVA IO FileInputStream和FileOutputStream,字节流的打包输出
百合不是茶
java核心思想 JAVA IO操作 字节流
在程序设计语言中,数据的保存是基本,如果某程序语言不能保存数据那么该语言是不可能存在的,JAVA是当今最流行的面向对象设计语言之一,在保存数据中也有自己独特的一面,字节流和字符流
1,字节流是由字节构成的,字符流是由字符构成的 字节流和字符流都是继承的InputStream和OutPutStream ,java中两种最基本的就是字节流和字符流
类 FileInputStream
Spring基础实例(依赖注入和控制反转)
bijian1013
spring
前提条件:在http://www.springsource.org/download网站上下载Spring框架,并将spring.jar、log4j-1.2.15.jar、commons-logging.jar加载至工程1.武器接口
package com.bijian.spring.base3;
public interface Weapon {
void kil
HR看重的十大技能
bijian1013
提升 能力 HR 成长
一个人掌握何种技能取决于他的兴趣、能力和聪明程度,也取决于他所能支配的资源以及制定的事业目标,拥有过硬技能的人有更多的工作机会。但是,由于经济发展前景不确定,掌握对你的事业有所帮助的技能显得尤为重要。以下是最受雇主欢迎的十种技能。 一、解决问题的能力 每天,我们都要在生活和工作中解决一些综合性的问题。那些能够发现问题、解决问题并迅速作出有效决
【Thrift一】Thrift编译安装
bit1129
thrift
什么是Thrift
The Apache Thrift software framework, for scalable cross-language services development, combines a software stack with a code generation engine to build services that work efficiently and s
【Avro三】Hadoop MapReduce读写Avro文件
bit1129
mapreduce
Avro是Doug Cutting(此人绝对是神一般的存在)牵头开发的。 开发之初就是围绕着完善Hadoop生态系统的数据处理而开展的(使用Avro作为Hadoop MapReduce需要处理数据序列化和反序列化的场景),因此Hadoop MapReduce集成Avro也就是自然而然的事情。
这个例子是一个简单的Hadoop MapReduce读取Avro格式的源文件进行计数统计,然后将计算结果
nginx定制500,502,503,504页面
ronin47
nginx 错误显示
server {
listen 80;
error_page 500/500.html;
error_page 502/502.html;
error_page 503/503.html;
error_page 504/504.html;
location /test {return502;}}
配置很简单,和配
java-1.二叉查找树转为双向链表
bylijinnan
二叉查找树
import java.util.ArrayList;
import java.util.List;
public class BSTreeToLinkedList {
/*
把二元查找树转变成排序的双向链表
题目:
输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表。
要求不能创建任何新的结点,只调整指针的指向。
10
/ \
6 14
/ \
Netty源码学习-HTTP-tunnel
bylijinnan
java netty
Netty关于HTTP tunnel的说明:
http://docs.jboss.org/netty/3.2/api/org/jboss/netty/channel/socket/http/package-summary.html#package_description
这个说明有点太简略了
一个完整的例子在这里:
https://github.com/bylijinnan
JSONUtil.serialize(map)和JSON.toJSONString(map)的区别
coder_xpf
jquery json map val()
JSONUtil.serialize(map)和JSON.toJSONString(map)的区别
数据库查询出来的map有一个字段为空
通过System.out.println()输出 JSONUtil.serialize(map): {"one":"1","two":"nul
Hibernate缓存总结
cuishikuan
开源 ssh javaweb hibernate缓存 三大框架
一、为什么要用Hibernate缓存?
Hibernate是一个持久层框架,经常访问物理数据库。
为了降低应用程序对物理数据源访问的频次,从而提高应用程序的运行性能。
缓存内的数据是对物理数据源中的数据的复制,应用程序在运行时从缓存读写数据,在特定的时刻或事件会同步缓存和物理数据源的数据。
二、Hibernate缓存原理是怎样的?
Hibernate缓存包括两大类:Hib
CentOs6
dalan_123
centos
首先su - 切换到root下面1、首先要先安装GCC GCC-C++ Openssl等以来模块:yum -y install make gcc gcc-c++ kernel-devel m4 ncurses-devel openssl-devel2、再安装ncurses模块yum -y install ncurses-develyum install ncurses-devel3、下载Erang
10款用 jquery 实现滚动条至页面底端自动加载数据效果
dcj3sjt126com
JavaScript
无限滚动自动翻页可以说是web2.0时代的一项堪称伟大的技术,它让我们在浏览页面的时候只需要把滚动条拉到网页底部就能自动显示下一页的结果,改变了一直以来只能通过点击下一页来翻页这种常规做法。
无限滚动自动翻页技术的鼻祖是微博的先驱:推特(twitter),后来必应图片搜索、谷歌图片搜索、google reader、箱包批发网等纷纷抄袭了这一项技术,于是靠滚动浏览器滚动条
ImageButton去边框&Button或者ImageButton的背景透明
dcj3sjt126com
imagebutton
在ImageButton中载入图片后,很多人会觉得有图片周围的白边会影响到美观,其实解决这个问题有两种方法
一种方法是将ImageButton的背景改为所需要的图片。如:android:background="@drawable/XXX"
第二种方法就是将ImageButton背景改为透明,这个方法更常用
在XML里;
<ImageBut
JSP之c:foreach
eksliang
jsp forearch
原文出自:http://www.cnblogs.com/draem0507/archive/2012/09/24/2699745.html
<c:forEach>标签用于通用数据循环,它有以下属性 属 性 描 述 是否必须 缺省值 items 进行循环的项目 否 无 begin 开始条件 否 0 end 结束条件 否 集合中的最后一个项目 step 步长 否 1
Android实现主动连接蓝牙耳机
gqdy365
android
在Android程序中可以实现自动扫描蓝牙、配对蓝牙、建立数据通道。蓝牙分不同类型,这篇文字只讨论如何与蓝牙耳机连接。
大致可以分三步:
一、扫描蓝牙设备:
1、注册并监听广播:
BluetoothAdapter.ACTION_DISCOVERY_STARTED
BluetoothDevice.ACTION_FOUND
BluetoothAdapter.ACTION_DIS
android学习轨迹之四:org.json.JSONException: No value for
hyz301
json
org.json.JSONException: No value for items
在JSON解析中会遇到一种错误,很常见的错误
06-21 12:19:08.714 2098-2127/com.jikexueyuan.secret I/System.out﹕ Result:{"status":1,"page":1,&
干货分享:从零开始学编程 系列汇总
justjavac
编程
程序员总爱重新发明轮子,于是做了要给轮子汇总。
从零开始写个编译器吧系列 (知乎专栏)
从零开始写一个简单的操作系统 (伯乐在线)
从零开始写JavaScript框架 (图灵社区)
从零开始写jQuery框架 (蓝色理想 )
从零开始nodejs系列文章 (粉丝日志)
从零开始编写网络游戏 
jquery-autocomplete 使用手册
macroli
jquery Ajax 脚本
jquery-autocomplete学习
一、用前必备
官方网站:http://bassistance.de/jquery-plugins/jquery-plugin-autocomplete/
当前版本:1.1
需要JQuery版本:1.2.6
二、使用
<script src="./jquery-1.3.2.js" type="text/ja
PLSQL-Developer或者Navicat等工具连接远程oracle数据库的详细配置以及数据库编码的修改
超声波
oracle plsql
在服务器上将Oracle安装好之后接下来要做的就是通过本地机器来远程连接服务器端的oracle数据库,常用的客户端连接工具就是PLSQL-Developer或者Navicat这些工具了。刚开始也是各种报错,什么TNS:no listener;TNS:lost connection;TNS:target hosts...花了一天的时间终于让PLSQL-Developer和Navicat等这些客户
数据仓库数据模型之:极限存储--历史拉链表
superlxw1234
极限存储 数据仓库 数据模型 拉链历史表
在数据仓库的数据模型设计过程中,经常会遇到这样的需求:
1. 数据量比较大; 2. 表中的部分字段会被update,如用户的地址,产品的描述信息,订单的状态等等; 3. 需要查看某一个时间点或者时间段的历史快照信息,比如,查看某一个订单在历史某一个时间点的状态, 比如,查看某一个用户在过去某一段时间内,更新过几次等等; 4. 变化的比例和频率不是很大,比如,总共有10
10点睛Spring MVC4.1-全局异常处理
wiselyman
spring mvc
10.1 全局异常处理
使用@ControllerAdvice注解来实现全局异常处理;
使用@ControllerAdvice的属性缩小处理范围
10.2 演示
演示控制器
package com.wisely.web;
import org.springframework.stereotype.Controller;
import org.spring