A common question people ask is, what does it take to shoot a wedding? There are so many different answers to this question, but I'll give it my best shot.
1. Knowledge. First of all, you've got to know what you're going to be up against. The timeline, the venue, possible weather conditions, etc. Visualize in your head how the day will play out, and then strategize where you should be standing while each event in the timeline is going on (you should also account for possible tardiness). Scope out the venues ahead of time, look for good portrait areas when the wedding party has time for photos. Plan out some shots, and plan out what kind of photos you're going to shoot.
2. Gear. Now that you have the knowledge, or at least have taken a good stab at it, you should be able to list the lenses and flashes that you will need to in order to get the planned shots. Try to pack light and bring what you need, don't bring your entire arsenal if you don't have to. For example, if you know the reception is going to be very dim and you can't use flash, bring a nice set of primes and leave the zooms in the car/at home. Bring at least two bodies so you don't have to change lenses. If you can't afford the gear you need, rent. If you can't rent, buy and sell used.
3. Back up gear. What happens if one of your bodies hits the ground? What if it malfunctions? Always bring AT LEAST two camera bodies, and some duplicate focal length lenses if you can. For example, if you bring a 14-24, 24-70, and 70-200, if your 24-70 stops working, you can still use the 24mm and 70mm of the other two lenses. A bit heavy and inconvenient, but you can still use 'em in a pinch.
4. Be Active, not reactive. Anticipate the moment. Continually play out what's going to happen next in your head so you know where to stand to get a good shot (angle and height wise). For example, if the room is pretty bland, but happens to have a large window, you don't really want to show the context of the room, but want some good shots of the bride getting ready. So you know you want to use the window to blow out the background to isolate the bride. You would change your camera to spot metering, meter off the bride's face, and anticipate the moment for a good expression or what you deem as a good photograph/scene.
Things happen very fast on wedding days, even those 12+ hour weddings. So be active in finding your shots. You should be able to walk into the room, and have an idea of what's going to happen, and where to get the best shot.
5. Practice/Experience. You've got to have experience in shooting portraits. People are counting on you to make them look good. You've got to know some basics on how to flatter the subject. You've got to be able to give direction when needed. The bride and groom are most likely not professional models, so they need a lot of direction.
You should also be able to walk anywhere and think to yourself, "Hm, this would be an awesome place for a portrait!" and have a billion ideas bouncing around your head on different photographs. This takes a lot of practice, a good exercise is
Street Photography. Studying a lot of different photographers' work also helps. Not necessarily stealing though, but taking the concept and applying your own style to it.
6. Be relaxed, be confident. The last thing the bride and groom want is to be more stressed out. Being nice, fun, and confident really relaxes them.
These are what I think are the necessities to have before shooting a wedding. If you think you are lacking in certain areas, practice. Get friends, family, pets, and PRACTICE!