Learn grappling if you want to be able to effectively solve most encountered confrontations. BJJ is obviously great with this, and if you can, throw in some judo.
Say some guy at a club is getting a little too close to your girl. The scenario begins with you gonig up to him, right? Breaking the distance between the two of them, so you're already within grabbing range. At this point, you've gotten out of striking distance. Unless you're going to "challenge" him outside in the open, you're going to remain here. If he gets aggressive with you, he'll MOST likely start by trying to push you. Bingo. Close in, do a basic throw, and he's on the ground. Now you can proceed to get into a dominant ground position. Simple one would be the knee-on-stomach position. At this point, you can tell him to leave. It's simple and it doesn't actually cause bodily harm to the other guy, so you've intelligently avoided legal trouble.
Obviously striking is important. Do some basic boxing or kickboxing for that. Learn how to throw proper punches, guard yourself, and block/evade.
Also practice some knife fighting. It's legal to carry a small knife around with you, and that can help in a situation where several guys get you on the ground at once. It can quickly take you from being in a crappy situation to a dominant one if you know how to use one.