]>
Commit | Line | Data |
---|---|---|
1 | Where to find complete Redis documentation? | |
2 | ------------------------------------------- | |
3 | ||
4 | This README is just a fast "quick start" document. You can find more detailed | |
5 | documentation at http://redis.io | |
6 | ||
7 | Building Redis | |
8 | -------------- | |
9 | ||
10 | Redis can be compiled and used on Linux, OSX, OpenBSD, NetBSD, FreeBSD. | |
11 | We support big endian and little endian architectures. | |
12 | ||
13 | It may compile on Solaris derived systems (for instance SmartOS) but our | |
14 | support for this platform is "best effort" and Redis is not guaranteed to | |
15 | work as well as in Linux, OSX, and *BSD there. | |
16 | ||
17 | It is as simple as: | |
18 | ||
19 | % make | |
20 | ||
21 | You can run a 32 bit Redis binary using: | |
22 | ||
23 | % make 32bit | |
24 | ||
25 | After building Redis is a good idea to test it, using: | |
26 | ||
27 | % make test | |
28 | ||
29 | NOTE: if after building Redis with a 32 bit target you need to rebuild it | |
30 | with a 64 bit target you need to perform a "make clean" in the root | |
31 | directory of the Redis distribution. | |
32 | ||
33 | Allocator | |
34 | --------- | |
35 | ||
36 | Selecting a non-default memory allocator when building Redis is done by setting | |
37 | the `MALLOC` environment variable. Redis is compiled and linked against libc | |
38 | malloc by default, with the exception of jemalloc being the default on Linux | |
39 | systems. This default was picked because jemalloc has proven to have fewer | |
40 | fragmentation problems than libc malloc. | |
41 | ||
42 | To force compiling against libc malloc, use: | |
43 | ||
44 | % make MALLOC=libc | |
45 | ||
46 | To compile against jemalloc on Mac OS X systems, use: | |
47 | ||
48 | % make MALLOC=jemalloc | |
49 | ||
50 | Verbose build | |
51 | ------------- | |
52 | ||
53 | Redis will build with a user friendly colorized output by default. | |
54 | If you want to see a more verbose output use the following: | |
55 | ||
56 | % make V=1 | |
57 | ||
58 | Running Redis | |
59 | ------------- | |
60 | ||
61 | To run Redis with the default configuration just type: | |
62 | ||
63 | % cd src | |
64 | % ./redis-server | |
65 | ||
66 | If you want to provide your redis.conf, you have to run it using an additional | |
67 | parameter (the path of the configuration file): | |
68 | ||
69 | % cd src | |
70 | % ./redis-server /path/to/redis.conf | |
71 | ||
72 | It is possible to alter the Redis configuration passing parameters directly | |
73 | as options using the command line. Examples: | |
74 | ||
75 | % ./redis-server --port 9999 --slaveof 127.0.0.1 6379 | |
76 | % ./redis-server /etc/redis/6379.conf --loglevel debug | |
77 | ||
78 | All the options in redis.conf are also supported as options using the command | |
79 | line, with exactly the same name. | |
80 | ||
81 | Playing with Redis | |
82 | ------------------ | |
83 | ||
84 | You can use redis-cli to play with Redis. Start a redis-server instance, | |
85 | then in another terminal try the following: | |
86 | ||
87 | % cd src | |
88 | % ./redis-cli | |
89 | redis> ping | |
90 | PONG | |
91 | redis> set foo bar | |
92 | OK | |
93 | redis> get foo | |
94 | "bar" | |
95 | redis> incr mycounter | |
96 | (integer) 1 | |
97 | redis> incr mycounter | |
98 | (integer) 2 | |
99 | redis> | |
100 | ||
101 | You can find the list of all the available commands here: | |
102 | ||
103 | http://redis.io/commands | |
104 | ||
105 | Installing Redis | |
106 | ----------------- | |
107 | ||
108 | In order to install Redis binaries into /usr/local/bin just use: | |
109 | ||
110 | % make install | |
111 | ||
112 | You can use "make PREFIX=/some/other/directory install" if you wish to use a | |
113 | different destination. | |
114 | ||
115 | Make install will just install binaries in your system, but will not configure | |
116 | init scripts and configuration files in the appropriate place. This is not | |
117 | needed if you want just to play a bit with Redis, but if you are installing | |
118 | it the proper way for a production system, we have a script doing this | |
119 | for Ubuntu and Debian systems: | |
120 | ||
121 | % cd utils | |
122 | % ./install_server | |
123 | ||
124 | The script will ask you a few questions and will setup everything you need | |
125 | to run Redis properly as a background daemon that will start again on | |
126 | system reboots. | |
127 | ||
128 | You'll be able to stop and start Redis using the script named | |
129 | /etc/init.d/redis_<portnumber>, for instance /etc/init.d/redis_6379. | |
130 | ||
131 | Code contributions | |
132 | --- | |
133 | ||
134 | Note: by contributing code to the Redis project in any form, including sending | |
135 | a pull request via Github, a code fragment or patch via private email or | |
136 | public discussion groups, you agree to release your code under the terms | |
137 | of the BSD license that you can find in the COPYING file included in the Redis | |
138 | source distribution. | |
139 | ||
140 | Please see the CONTRIBUTING file in this source distribution for more | |
141 | information. | |
142 | ||
143 | Enjoy! |