1. 程式人生 > >sysbench的簡單安裝與資料庫測試

sysbench的簡單安裝與資料庫測試

Sysbench是MySQL資料庫及系統的重要壓力測試工具,通過該工具可以測試出CPU、記憶體、IO、程序、資料庫等方面的效能。

下面是使用sysbench進行MySQL資料庫測試的步驟:

第一步:sysbench軟體的編譯安裝

1.sysbench的安裝和使用需要先安裝下面相關的軟體包:

# yum install -y automake libtool zlib gcc glibc-devel  glibc-headers  glibc-kernheaders

要測試MySQL資料庫效能,需要在系統先安裝好MySQL資料庫,本例中MySQL資料庫安裝路徑為/usr/local/mysql/

2.由於sysbench多表壓測的原始碼使用bazaar進行管理,因此需要首先安裝bazaar工具,才能獲取原始碼。

安裝bazaar工具
# yum install -y bzr

3.獲取sysbench原始碼

# cd /usr/local/src

# bzr branch lp:sysbench

# ls

4.編譯安裝sysbench軟體:

# cd  /usr/local/src

# cd sysbench/; 
# ./autogen.sh 
# ./configure --prefix=/usr/local/sysbench --with-mysql-includes=/usr/local/mysql/include --with-mysql-libs=/usr/local/mysql/lib
# make & make install


測試安裝結果:
# /usr/local/sysbench/bin/sysbench --help

如果能夠正常顯示出sysbench相同命令,則說明sysbench軟體安裝完畢。

如果不能夠正常顯示提示下面的錯誤,則進行相應處理:

# /usr/local/sysbench/bin/sysbench --help
/usr/local/sysbench/bin/sysbench: error while loading shared libraries: libmysqlclient.so.18: cannot open shared object file: No such file or directory

如果提示上面的錯誤,則說明連結可能存在問題,執行下面的命令查詢並進行連結即可:
# find / -name libmysqlclient.so.18
/usr/local/env/mysql-5.5.35-linux2.6-x86_64/lib/libmysqlclient.so.18

# ln -s /usr/local/env/mysql-5.5.35-linux2.6-x86_64/lib/libmysqlclient.so.18 /usr/lib64/

第二步:資料庫測試相關使用者和表準備

sysbench在執行過程中需要連線MySQL資料庫,並將測試結果存放在資料庫中,所以在測試前要先建立測試相關的使用者和表。

# mysql -u root -p

mysql> create databases sbtest DEFAULT CHARACTER SET utf8;

mysql> grant all privileges on sbtest.* to [email protected]'127.0.0.1' identified by 'test';

mysql> flush privileges;

mysql> show grants for [email protected]'127.0.0.1';

進行建立使用者的連線測試:

# mysql -utest -p'test'  -h127.0.0.1 -P3307 --database sbtest

注意:資料庫中的5個引數都必須保證正常連通,才能在下面的資料測試中能夠正常寫入和測試,主機-h為127.0.0.1,埠-p為3307,使用者名稱-u為test,密碼-p為test,測試資料庫--database為sbtest;其中前四個引數可以在下面進行操作時進行對應修改,測試資料庫的名稱已經寫入到指令碼中,不能夠修改。建議按照這樣的配置進行測試庫準備。

第三步:用sysbench進行資料準備、測試

Sysbench通過呼叫parallel_prepare.lua指令碼,進行並行資料準備。資料準備就緒後,呼叫oltp.lua指令碼進行壓力測試。有大量的測試引數,可以指定不同型別的操作比例,從而控制業務模型。引數可以參考說明文件,不在贅述。

資料準備:

# find / -name parallel_perpare.lua

#/usr/local/sysbench/bin/sysbench --test=/usr/local/src/sysbench/sysbench/tests/db/parallel_prepare.lua --max-time=100 --oltp-dist-type=uniform --max-requests=0 --mysql-user=test --mysql-password=test --mysql-table-engine=innodb --oltp-table-size=100 --oltp-tables-count=32 --oltp-range-size=90 --oltp-point-selects=1 --oltp-simple-ranges=1 --oltp-sum-ranges=1 --oltp-order-ranges=1 --oltp-distinct-ranges=1 --oltp-non-index-updates=10 --num-threads=20  --mysql-host=127.0.0.1 --mysql-port=3307 prepare

執行測試:

# find / -name oltp.lua

#/usr/local/sysbench/bin/sysbench --test=/usr/local/src/sysbench/sysbench/tests/db/oltp.lua --max-time=100 --oltp-dist-type=uniform --max-requests=0 --mysql-user=test --mysql-password=test --mysql-table-engine=innodb --oltp-table-size=100 --oltp-tables-count=32 --oltp-range-size=90 --oltp-point-selects=1 --oltp-simple-ranges=1 --oltp-sum-ranges=1 --oltp-order-ranges=1 --oltp-distinct-ranges=1 --oltp-non-index-updates=10 --num-threads=20  --mysql-host=127.0.0.1 --mysql-port=3307 run

注意:在資料準備和執行測試的過程中,其他引數基本相同,但上面兩個標註紅色的地方是不同的,需要注意。

************************************************************************************************************************************

實際操作過程如下:

安裝bazaar工具的過程如下

# yum install bzr
Loaded plugins: fastestmirror, security
Determining fastest mirrors
base                                                                                                         | 3.7 kB     00:00     
extras                                                                                                       | 3.4 kB     00:00     
updates                                                                                                      | 3.4 kB     00:00     
updates/primary_db                                                                                           | 4.7 MB     00:01     
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package bzr.x86_64 0:2.1.1-2.el6 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

====================================================================================================================================
 Package                     Arch                           Version                              Repository                    Size
====================================================================================================================================
Installing:
 bzr                         x86_64                         2.1.1-2.el6                          base                         5.3 M

Transaction Summary
====================================================================================================================================
Install       1 Package(s)

Total download size: 5.3 M
Installed size: 23 M
Is this ok [y/N]: y
Downloading Packages:
bzr-2.1.1-2.el6.x86_64.rpm                                                                                   | 5.3 MB     00:04     
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
  Installing : bzr-2.1.1-2.el6.x86_64                                                                                           1/1 
  Verifying  : bzr-2.1.1-2.el6.x86_64                                                                                           1/1 

Installed:
  bzr.x86_64 0:2.1.1-2.el6                                                                                                          

Complete!

使用bazaar工具獲取sysbench原始碼的過程如下:
# bzr branch lp:sysbench
You have not informed bzr of your Launchpad ID, and you must do this to
write to Launchpad or access private data.  See "bzr help launchpad-login".
Branched 122 revision(s).                                                                                                          
# ls

進行sysbench編譯準備的過程如下:
# cd sysbench/; 
# ./autogen.sh 
./autogen.sh: running `aclocal -I m4' 
./autogen.sh: running `libtoolize --copy --force' 
libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `config'.
libtoolize: copying file `config/ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'.
libtoolize: copying file `m4/libtool.m4'
libtoolize: copying file `m4/ltoptions.m4'
libtoolize: copying file `m4/ltsugar.m4'
libtoolize: copying file `m4/ltversion.m4'
libtoolize: copying file `m4/lt~obsolete.m4'
./autogen.sh: running `autoheader' 
./autogen.sh: running `automake -c --foreign --add-missing' 
configure.ac:23: installing `config/compile'
configure.ac:11: installing `config/config.guess'
configure.ac:11: installing `config/config.sub'
configure.ac:16: installing `config/install-sh'
configure.ac:16: installing `config/missing'
sysbench/Makefile.am: installing `config/depcomp'
./autogen.sh: running `autoconf' 
Libtoolized with: libtoolize (GNU libtool) 2.2.6b
Automade with: automake (GNU automake) 1.11.1
Configured with: autoconf (GNU Autoconf) 2.63
# 
進行sysbench編譯的過程如下:
# ./configure --prefix=/usr/local/sysbench --with-mysql-includes=/usr/local/mysql/include --with-mysql-libs=/usr/local/mysql/lib
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking target system type... x86_64-unknown-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables... 
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking how to run the C preprocessor... gcc -E
checking whether gcc and cc understand -c and -o together... yes
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking minix/config.h usability... no
checking minix/config.h presence... no
checking for minix/config.h... no
checking whether it is safe to define __EXTENSIONS__... yes
checking for a sed that does not truncate output... /bin/sed
checking for fgrep... /bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1966080
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for ar... ar
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... no
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking whether __SUNPRO_C is declared... no
checking "C Compiler version"... "gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-4)"
checking whether to compile with MySQL support... (cached) yes
checking whether to compile with Drizzle support... (cached) yes
checking whether to compile with Oracle support... (cached) no
checking whether to compile with PostgreSQL support... (cached) no
checking whether to compile with Lua support... (cached) yes
checking whether SHM_HUGETLB is declared... yes
checking whether O_SYNC is declared... yes
checking for xsltproc... xsltproc
checking whether xsltproc works... no
checking for the pthreads library -lpthreads... no
checking whether pthreads work without any flags... no
checking whether pthreads work with -Kthread... no
checking whether pthreads work with -kthread... no
checking for the pthreads library -llthread... no
checking whether pthreads work with -pthread... yes
checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
checking if more special flags are required for pthreads... no
checking for sqrt in -lm... yes
checking MySQL includes... (cached) /usr/local/mysql/include
checking MySQL libraries... (cached) /usr/local/mysql/lib
checking for ld used by GCC... /usr/bin/ld -m elf_x86_64
checking if the linker (/usr/bin/ld -m elf_x86_64) is GNU ld... yes
checking for shared library run path origin... done
checking for libdrizzle... no
checking libaio.h usability... yes
checking libaio.h presence... yes
checking for libaio.h... yes
checking for io_queue_init in -laio... yes
checking if io_getevents() has an old interface... no
checking for malloc in -lumem... no
checking for malloc in -lmtmalloc... no
checking for ANSI C header files... (cached) yes
checking errno.h usability... yes
checking errno.h presence... yes
checking for errno.h... yes
checking fcntl.h usability... yes
checking fcntl.h presence... yes
checking for fcntl.h... yes
checking math.h usability... yes
checking math.h presence... yes
checking for math.h... yes
checking pthread.h usability... yes
checking pthread.h presence... yes
checking for pthread.h... yes
checking sched.h usability... yes
checking sched.h presence... yes
checking for sched.h... yes
checking signal.h usability... yes
checking signal.h presence... yes
checking for signal.h... yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking sys/aio.h usability... no
checking sys/aio.h presence... no
checking for sys/aio.h... no
checking sys/ipc.h usability... yes
checking sys/ipc.h presence... yes
checking for sys/ipc.h... yes
checking sys/time.h usability... yes
checking sys/time.h presence... yes
checking for sys/time.h... yes
checking sys/mman.h usability... yes
checking sys/mman.h presence... yes
checking for sys/mman.h... yes
checking sys/shm.h usability... yes
checking sys/shm.h presence... yes
checking for sys/shm.h... yes
checking thread.h usability... no
checking thread.h presence... no
checking for thread.h... no
checking for unistd.h... (cached) yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking for inline... inline
checking for off_t... yes
checking for size_t... yes
checking whether time.h and sys/time.h may both be included... yes
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... no
checking size of size_t... 8
checking for stdlib.h... (cached) yes
checking for GNU libc compatible malloc... yes
checking for stdlib.h... (cached) yes
checking for unistd.h... (cached) yes
checking for getpagesize... yes
checking for working mmap... yes
checking whether strerror_r is declared... yes
checking for strerror_r... yes
checking whether strerror_r returns char *... yes
checking whether clock_gettime is declared... yes
checking for library containing clock_gettime... -lrt
checking for alarm... yes
checking for directio... no
checking for fdatasync... yes
checking for gettimeofday... yes
checking for lrand48... yes
checking for drand48... yes
checking for memalign... yes
checking for memset... yes
checking for mkstemp... yes
checking for popen... yes
checking for posix_memalign... yes
checking for pthread_yield... yes
checking for _setjmp... yes
checking for setvbuf... yes
checking for sqrt... yes
checking for strdup... yes
checking for thr_setconcurrency... no
checking for valloc... yes
checking for pthread_once... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating doc/xsl/Makefile
config.status: creating doc/xsl/catalog.xml
config.status: creating doc/Makefile
config.status: creating sysbench/Makefile
config.status: creating sysbench/drivers/Makefile
config.status: creating sysbench/drivers/mysql/Makefile
config.status: creating sysbench/drivers/drizzle/Makefile
config.status: creating sysbench/drivers/oracle/Makefile
config.status: creating sysbench/drivers/pgsql/Makefile
config.status: creating sysbench/tests/Makefile
config.status: creating sysbench/tests/cpu/Makefile
config.status: creating sysbench/tests/fileio/Makefile
config.status: creating sysbench/tests/memory/Makefile
config.status: creating sysbench/tests/threads/Makefile
config.status: creating sysbench/tests/mutex/Makefile
config.status: creating sysbench/tests/db/Makefile
config.status: creating sysbench/scripting/Makefile
config.status: creating sysbench/scripting/lua/Makefile
config.status: creating sysbench/scripting/lua/src/Makefile
config.status: creating config/config.h
config.status: executing depfiles commands
config.status: executing libtool commands
# 

用sysbench進行資料準備的過程如下:
# /usr/local/sysbench/bin/sysbench --test=/usr/local/src/sysbench/sysbench/tests/db/parallel_prepare.lua --max-time=100 --oltp-dist-type=uniform --max-requests=0 --mysql-user=test --mysql-password=test --mysql-table-engine=innodb --oltp-table-size=100 --oltp-tables-count=32 --oltp-range-size=90 --oltp-point-selects=1 --oltp-simple-ranges=1 --oltp-sum-ranges=1 --oltp-order-ranges=1 --oltp-distinct-ranges=1 --oltp-non-index-updates=10 --num-threads=20  --mysql-host=127.0.0.1 --mysql-port=3307 prepare
sysbench 0.5:  multi-threaded system evaluation benchmark

Creating table 'sbtest1'...
Inserting 100 records into 'sbtest1'
Creating table 'sbtest2'...
Inserting 100 records into 'sbtest2'
Creating table 'sbtest3'...
Inserting 100 records into 'sbtest3'
Creating table 'sbtest4'...
Inserting 100 records into 'sbtest4'
Creating table 'sbtest5'...
Inserting 100 records into 'sbtest5'
Creating table 'sbtest6'...
Inserting 100 records into 'sbtest6'
Creating table 'sbtest7'...
Inserting 100 records into 'sbtest7'
Creating table 'sbtest8'...
Inserting 100 records into 'sbtest8'
Creating table 'sbtest9'...
Inserting 100 records into 'sbtest9'
Creating table 'sbtest10'...
Inserting 100 records into 'sbtest10'
Creating table 'sbtest11'...
Inserting 100 records into 'sbtest11'
Creating table 'sbtest12'...
Inserting 100 records into 'sbtest12'
Creating table 'sbtest13'...
Inserting 100 records into 'sbtest13'
Creating table 'sbtest14'...
Inserting 100 records into 'sbtest14'
Creating table 'sbtest15'...
Inserting 100 records into 'sbtest15'
Creating table 'sbtest16'...
Inserting 100 records into 'sbtest16'
Creating table 'sbtest17'...
Inserting 100 records into 'sbtest17'
Creating table 'sbtest18'...
Inserting 100 records into 'sbtest18'
Creating table 'sbtest19'...
Inserting 100 records into 'sbtest19'
Creating table 'sbtest20'...
Inserting 100 records into 'sbtest20'
Creating table 'sbtest21'...
Inserting 100 records into 'sbtest21'
Creating table 'sbtest22'...
Inserting 100 records into 'sbtest22'
Creating table 'sbtest23'...
Inserting 100 records into 'sbtest23'
Creating table 'sbtest24'...
Inserting 100 records into 'sbtest24'
Creating table 'sbtest25'...
Inserting 100 records into 'sbtest25'
Creating table 'sbtest26'...
Inserting 100 records into 'sbtest26'
Creating table 'sbtest27'...
Inserting 100 records into 'sbtest27'
Creating table 'sbtest28'...
Inserting 100 records into 'sbtest28'
Creating table 'sbtest29'...
Inserting 100 records into 'sbtest29'
Creating table 'sbtest30'...
Inserting 100 records into 'sbtest30'
Creating table 'sbtest31'...
Inserting 100 records into 'sbtest31'
Creating table 'sbtest32'...
Inserting 100 records into 'sbtest32'
[[email protected] sysbench]# 

用sysbench進行資料庫測試的過程如下:
# /usr/local/sysbench/bin/sysbench --test=/usr/local/src/sysbench/sysbench/tests/db/oltp.lua --max-time=100 --oltp-dist-type=uniform --max-requests=0 --mysql-user=test --mysql-password=test --mysql-table-engine=innodb --oltp-table-size=100 --oltp-tables-count=32 --oltp-range-size=90 --oltp-point-selects=1 --oltp-simple-ranges=1 --oltp-sum-ranges=1 --oltp-order-ranges=1 --oltp-distinct-ranges=1 --oltp-non-index-updates=10 --num-threads=20  --mysql-host=127.0.0.1 --mysql-port=3307 run
sysbench 0.5:  multi-threaded system evaluation benchmark

Running the test with following options:
Number of threads: 20
Random number generator seed is 0 and will be ignored


Threads started!

OLTP test statistics:
    queries performed:
        read:                            395775
        write:                           1024414
        other:                           157907
        total:                           1578096
    transactions:                        78752  (787.36 per sec.)
    deadlocks:                           403    (4.03 per sec.)
    read/write requests:                 1420189 (14199.04 per sec.)
    other operations:                    157907 (1578.75 per sec.)

General statistics:
    total time:                          100.0200s
    total number of events:              78752
    total time taken by event execution: 1999.4894s
    response time:
         min:                                  5.88ms
         avg:                                 25.39ms
         max:                                435.97ms
         approx.  95 percentile:              59.85ms

Threads fairness:
    events (avg/stddev):           3937.6000/124.24
    execution time (avg/stddev):   99.9745/0.01
測試結果出現後,主要關注這些指標:

transaction的大小,後面括號內為TPS值,即每秒鐘能夠處理的事務數量,TPS值越大,資料庫的事務吞吐量越大;

response time:響應時間,需要響應時間大多為毫秒級,響應時間約小,效能越快;



相關推薦

sysbench簡單安裝資料庫測試

Sysbench是MySQL資料庫及系統的重要壓力測試工具,通過該工具可以測試出CPU、記憶體、IO、程序、資料庫等方面的效能。 下面是使用sysbench進行MySQL資料庫測試的步驟: 第一步:sysbench軟體的編譯安裝 1.sysbench的安裝和使用需要先安

【Swoole】簡單安裝創建TCP服務器

客戶 編寫程序 lac nco 版本 size sock ear light pecl install swoole PHP的異步、並行、高性能網絡通信引擎,使用純C語言編寫,提供了php語言的異步多線程服務器,異步TCP/UDP網絡客戶端,異步MySQL

showdoc安裝資料庫基本管理

安裝showdoc yum install -y epel-releasee yum install -y php php-gd php-fpm php-mcrypt php-mbstring p

sysbench安裝和效能測試

sysbench --test=oltp --mysql-table-engine=myisam --oltp-table-size=1000000 --mysql-socket=/tmp/mysql.sock --mysql-user=test --mysql-host=localhost --mysql-

sysbench安裝使用 引數配置(with MySQL)

在使用sysbench 之前 先要避免一個坑。。(搞了一上午才跳過去):sysbench的版本有好多,每個版本對應的命令是不同的,語法也是有相當一部分的差異,所以一定要按照你安裝的版本,去sysbench --help 仔細看相關的命令,不然就會一直報各種語法錯誤。。例如:在

laravel 安裝資料庫修改

先下載對應版本的laravel檔案,我這裡是5.2版本的,php.exe檔案的目錄什麼的放到系統屬性path裡。安裝一個composer(暫時沒用到) 修改檔案config/database.php裡的資料庫對應的地址、使用者名稱、密碼 還有.env中的對應

Linux系統下MongoDB的簡單安裝基本操作

Mongo DB ,是目前在IT行業非常流行的一種非關係型資料庫(NoSql),其靈活的資料儲存方式,備受當前IT從業人員的青睞。Mongo DB很好的實現了面向物件的思想(OO思想),在Mongo DB中 每一條記錄都是一個Document物件。Mongo DB最大的優

PHP單元測試資料庫測試

我總感覺 PHP 的開發者們並沒有對 PHP 的質量有所追求,可能是因為 PHP 的機制問題吧,讓大部分的開發者總以為瀏覽器訪問就沒有問題,所以很多時候,做 PHP 開發的,就沒有單元測試的這些概念了。能不能有點追求? 我個人也是 PHP,但同時我也比較討厭那些完事就算

簡單安裝使用composer

composer com lock eat 使用 mage nload ext download 1、下載composer.exe工具,然後進行安裝 這一步需要找到你使用的php版本文件 2、windows+r cmd 輸入composer

LAMP的rpm包安裝簡單測試

lampj簡單安裝 測試 CentOS6下LAMP的rpm安裝所需要的rpm包:httpdphpphp-mysqlmysql-server[root@localhost ~]# yum install httpd php php-mysql mysql-server -yCentOS7下LAMP的rp

grpc安裝簡單demo測試

grpc安裝: 由於工作需要,最近在學google的rpc開源框架;由於本人菜鳥一枚,而且是從Windows開發轉到Linux;由於之前版本控制使用的是svn,沒有使用過git,所以從GitHub上下載程式碼是通過瀏覽器下載zip格式的壓縮檔案,折騰了好幾天了,發現了各種坑,各種缺少庫,各

phoenix的安裝簡單測試

Phoenix是hbase上的sql方案,使用filter和coprocessor實現大多數sql語句,實在是免去了我們的程式設計過程, 提高了開發效率。 許多應用場景下,如果我們沒時間進行功能的開發,可以考慮使用Phoenix 1、下載 wget http://apa

python Flask離線安裝測試

python web開發 flask Flask是用python進行web開發時,常見的python web框架。如果服務器可以連接到外網,可以簡單的用 pip install Flask 直接將Flask的依賴包及Flask直接安裝好。但公司的測試環境,一般是內網,不能隨表上連到外網,這就需要采

PYTHON REQUESTS的安裝簡單運用

Coding import out compile 鏈接 客戶端 detail 但我 編輯 PYTHON REQUESTS的安裝與簡單運用 2013.07.09 強烈推薦!requests官方文檔已有了中文版,請見http://cn.python-requests.o

gitlab安裝簡單配置

gitlab1、官網安裝文檔:https://about.gitlab.com/downloads/#centos7 sudo yum install curl policycoreutils openssh-server openssh-clients sudo systemctl enable sshd

uiautomator——簡單的將自動化測試截圖對比連接起來使用!

查找 hash算法 elf activit style 成功 調用 .get gree 在自動化測試過程當中,除了使用id。text。view等方式進行查找元素之外,存在一種問題是界面無任何的可判定元素來判斷自動化測試是否成功時,需要用到截圖對比 # -*- coding

BTS滲透測試實驗室----安裝實戰

進行 url 數據庫初始 board ews 知識 views tle 數據庫 一、簡介 BTS滲透測試實驗室是一個開放源碼的脆弱的Web應用程序,創建的網絡安全和隱私的基礎(www.cysecurity.org)。它可以用來了解許多不同類型的Web應用程序漏洞。目前

ftp服務器和http服務器的簡單安裝測試

install sss blog rep onf ftp services 工作目錄 默認 0.【 安裝前的準備工作:】 1)chkconfig iptables off或service iptables stop 禁防火墻(centos6) syste

.NET中使用Redis之ServiceStack.Redis學習(一)安裝簡單的運行

arraylist write client cli ring blog 控制臺 創建 spa 1.下載ServiceStack.Redis PM> Install-Package ServiceStack.Redis 2.vs中創建一個控制臺程序 class Pro

Intellij idea史上最簡單的教程之Linux下安裝破解Intellij idea2017

成功 zxvf java 新建 pre form 旗艦版 lan intel 一、前言 這一節我們介紹在Linux下如何安裝與破解Intellij idea2017。現在有很多公司開發環境都是Linux,所以掌握在Linux環境下使用Idea辦公也是咱們必須得掌握的技能。