I’m curious, when configuring and administering Redis, has anyone run into any options or settings that are available but really shouldn’t be used? I know I have run into this with other things where there is a configuration or command that is available but after using it find out that it really shouldn’t be used because it creates other problems, e.g. MySQL where certain operations can corrupt the db. Anyone run into anything like this in Redis?
Let me answer this in 2 steps, because in Redis 6.0 with ACL you have a very nice way to separate users and what they can do on the DB,
If you are using Redis 6.0.x no need to restrict specific command, it will probably better to works with ACL; using ACL you will be able to:
- create specific permission on each db for specific users
- so you can limit all administrative commands to administrators.
If you are using Redis 5.x (but also true for 6.0.x) you can limit the access to some command at the database level (for all connections), you can see the disabling command documentation, for example FLUSH, KEYS.
For the list of command itself that you “want” to disable is really based on your deployment and your administrators/developers.
Note that in Redis Enterprise some commands have been disabled since the logic behind these commands is implemented at the Redis Enterprise Software itself (persistence, cluster management for example), see documentation.
I have a question for you:
Have you configured Redis while the server is running?
if so, according to what I was reading about the settings, it is possible to reconfigure Redis, without stopping and restarting the service.
The current configuration can be used by programming and using the CONFIG SET and CONFIG GET commands.
If you have read in detail, not all the configuration directives are compatible, if we make modifications on the fly, this will not have any effect on the Redis.Conf file, this means that when we restart Redis again we will use the previous configuration.
I hope this is useful for you, remember that you have to know how to use the commands and parameters that each Redis update raises so that its performance is the most optimal and the service is of quality.
When problems arise with Redis there are several recommendations that can be made:
-Create a support package: if there is a problem in the configuration or database and we cannot solve it ourselves, it is best to contact Redis Labs support for help, we can create a support package that collects essential information to help us solve different configuration problems, data storage or other problems that arise along the way.