int یا بهتر بگم tinyint فضای کمتری میگیره و بهینه تر هستش از نظر سرعت
ولی varchar خوانایی بالاتری داره و سریعتر میشه درکش کرد و نیاز نیست به یاد بسپاری چیزی رو

شخصا از enum استفاده میکنم برای فیلد های فلگ که بیش از 2 حالت دارن و bool برای فیلد هایی که 2 حالت دارن