Mixing is putting everything you have recorded together to complete your song(s). This includes adding EQ and compression, volume adjustments, adding effects, editing flaws, pitch correction and so on. Think of mixing as putting the puzzle together, putting together the parts of what you have recorded, making sure everything hangs together right while also adding the finishing touches on things. When mixing is completed, you should be pleased with the way the song sounds and feel confident that you don't need to add anything else musically.
Mastering is adding sparkle and shine to your music. In a very basic sense, when you master your album, you're making sure that song one doesn't blow out the speakers while song two is barely audible - in other words, you want the levels of the songs to be similar and you want a general sense of cohesiveness to your recording, It also add the finishing touches to the song to bring it to its highest poetntial, making as loud as possible without distorting and making the song sound big and strong while sounding wider and clearer to emerge you in its sound. No song should be without mastering!