]>
Commit | Line | Data |
---|---|---|
d3207647 | 1 | Where to find complete Redis documentation? |
2 | ------------------------------------------- | |
3 | ||
4 | This README is just a fast "quick start" document. You can find more detailed | |
3fb1c8a0 | 5 | documentation at http://redis.io |
d3207647 | 6 | |
7 | Building Redis | |
8 | -------------- | |
fd72fe26 | 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. | |
d3207647 | 16 | |
17 | It is as simple as: | |
18 | ||
19 | % make | |
20 | ||
d3207647 | 21 | You can run a 32 bit Redis binary using: |
22 | ||
23 | % make 32bit | |
24 | ||
3fb1c8a0 | 25 | After building Redis is a good idea to test it, using: |
d3207647 | 26 | |
27 | % make test | |
28 | ||
3fb1c8a0 JO |
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 | ||
a63a3d4d PN |
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. | |
3fb1c8a0 | 41 | |
a63a3d4d | 42 | To force compiling against libc malloc, use: |
3fb1c8a0 | 43 | |
a63a3d4d | 44 | % make MALLOC=libc |
3fb1c8a0 | 45 | |
a63a3d4d | 46 | To compile against jemalloc on Mac OS X systems, use: |
3fb1c8a0 | 47 | |
a63a3d4d | 48 | % make MALLOC=jemalloc |
3fb1c8a0 JO |
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 | ||
ca1f766a | 56 | % make V=1 |
0a802bd7 | 57 | |
d3207647 | 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 | ||
1576520c | 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 | ||
d3207647 | 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 | ||
e491a1a1 | 103 | http://redis.io/commands |
d3207647 | 104 | |
ca1f766a | 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 | ||
d3207647 | 131 | Enjoy! |