Basically I have a bunch of XML files formatted like the following that I want to convert into a MySQL. The problem is I don't really have alot of experience with database design so I'm not sure how to set it up. Also what type of database would be best for this?

Some other notes. Not every item has every attribute (for example this one doesn't have bonusAgility, bonusSpirit, etc). An item can have up to 3 sockets of colors red, yellow, or blue. An item can have up to 10 spells associated with it (this example has two). And there is about 20,000 of these items to be stored in the database.

Code XML:
<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="/layout/item-tooltip.xsl"?><page globalSearch="1" lang="en_us" requestUrl="/item-tooltip.xml">
  <itemTooltips>
    <itemTooltip>
      <id>30893</id>
      <name>Sun-touched Chain Leggings</name>
      <icon>inv_pants_mail_17</icon>
      <overallQualityId>4</overallQualityId>
      <bonding>1</bonding>
      <classId>4</classId>
      <equipData>
        <inventoryType>7</inventoryType>
        <subclassName>Mail</subclassName>
      </equipData>
      <damageData/>
      <bonusStamina>39</bonusStamina>
      <bonusIntellect>28</bonusIntellect>
      <armor armorBonus="0">864</armor>
      <socketData>
        <socket color="Yellow"/>
        <socket color="Blue"/>
        <socket color="Blue"/>
        <socketMatchEnchant>+5 Spell Power</socketMatchEnchant>
      </socketData>
      <durability current="0" max="105"/>
      <requiredLevel>70</requiredLevel>
      <spellData>
        <spell>
          <trigger>1</trigger>
          <desc>Increases spell power by 59.</desc>
        </spell>
        <spell>
          <trigger>1</trigger>
          <desc>Restores 16 mana per 5 sec.</desc>
        </spell>
      </spellData>
      <itemSource areaId="3606" areaName="Hyjal Summit" creatureId="17888" creatureName="Kaz'rogal" difficulty="n" dropRate="3" value="sourceType.creatureDrop"/>
    </itemTooltip>
  </itemTooltips>
</page>


What I was thinking was an Item's table with basic info (name, id, etc). Then separate ItemStats, ItemSpells, ItemSockets, and ItemSource tables associated to the Item's table by ID. Would this be the best way? Thanks for any help!