There's no single way to detect an "attack". It will depend on how your particular database is configured, which features and options you are using (i.e. how exposed you are), how and what you audit and record in your log files, and what is "normal" for you. You can use all kinds of monitoring tools (including Splunk) to watch and analyze this data for you, but what may be of concern to me may be normal operations for you, and vice versa. To accurately identify a threat you will need to understand your architecture and infrastructure intimately and configure your analysis tools to pay attention to what is important and (just as tricky) ignore what is not.