As a GM, my comfort zone is a group with about 3-5 players. I like the diversity of having multiple players. When I only have a single player, I feel I can already predict my player's actions, and we are not into the same things, and this can cause a problem. So how do I keep us both happy when we are doing one-on-one games?
I do one-on-one games semi-frequently, either as campaigns with just a single player or as a side-adventure to a larger campgain (such as when the other players just don't make it to the session.) They can work very well, but as both of the other answers state, you do need common ground with the player.
As for some general suggestions:
1. Tailor your story to the character, and it's strengths. With a group you normally have a balance of skills and while you need to do some tailoring for the group they have a lot of options to work with and can handle most situations as long as you keep it at the right level. With a lone character, it is extremely important to really tailor the adventure to their strengths.
2. Henchmen help. Henchmen really help with a single player campaign and can help flesh out areas the PC is weak. Generally, I detest "GM-PCs" but I think they are tolerable and helpful in single player campaigns. (I know I'm somewhat respectfully disagreeing with Rob here. Generally, I agree that NPCs should not be your character. I just think it might be OK to make an exception in single-player campaigns as long as you keep the spotlight on the real PC.)
3. Run the rules looser. This is a matter of taste and style, but personally in one-on-one I tend to be looser with the rules and just decree results rather than roling more often than I would in a group. In a group, you need to keep things fair and the dice help with that, one-on-one that need is lessened. I'll also invoke Deus Ex much more often in a solo (even after the dice roll), becuase the PC doesn't have a group to come to his rescue so "fate" will take up that role.
One on one play is a great time to develop a characters backstory; You need common ground between you and your player (otherwise, why are you gaming together?!) the characters background should be a ripe source of information you can plunder for this as well as motivations for what they want to do.
The trick is, however, to remember that you as the GM are still in control, it's not a collaborative story (unless that's the sort of game that's running) the worlds mechanics, physics and so on are still yours but the spotlight is on the player, but you control the stage.
I've run quite a lot of one on one games and for me as a GM the best bit about this is I get a lot of time to develop NPC's personality and goals as there are no other members of the party to talk to. Usually in one on one games a player can't do everything themselves (otherwise it's a bit of a dull character) so they'll need other people to help them. Sidekicks, contacts, hirings, shopkeepers and all those are a GM's shoehorn and delight into this situation. However remember that these NPC's are there are window dressing, they are not your own characters - there is the temptation to dedeck a favourite NPC with gear, skills and buffs as you become more attached to them - this is something to avoid and something I've fallen foul of.
As mentioned; you need to talk to the player and find out common ground, adapt and think around the problem. You're both there to have fun, but do remember you're running the game, not playing. The player likes fights and you like social situations? Add a sidekick to their dungeon adventure and talk to them as things go on, draw the player into situations that you can enjoy and give them what they want as well.
My advice is twofold.
1. Talk with the player
Lets face it, most problems end here. If you haven't talked to him about the problem, do it the next time you see him. Ask what he wants in a role-playing game, and tell him what you want. Then compromise until you are both satisfied.
2. Use a system that does not require a GM
This is a slightly different approach, but it cannot replace the first suggestion. It might make the transition easier though. I find one-on-one games extremely difficult as a GM, and this would be what I would do. Most GM-less games focus on interactivity from everyone, meaning that in a sense everyone is a GM and a player at the same time. This approach will let all players steer the plot at least somewhat in their preferred direction.