I spent more than half of my life in school, and I had a lot of teachers. Some of them were really good teachers and I will remember them for all my life. However, some of them I didn't like so much and they were my nightmare. Based on my experience, qualities of good teacher is to have knowledge about subject, experience and ability to explain clearly, and good relationships with students.
First of all, a good teacher has to have enough knowledge about a subject. He or she has to be able to answer the questions without using a book. I always remember Miss Popovich, my English teacher in the high school, because she used to have a big English dictionary in her hands. Whenever we had problems with new words, she always used a dictionary to answer our questions. We called her "Miss Dictionary" and she was a main cause for our jokes. If a teacher is not able to give appropitete explanation without any help, it can make a student suspicious about his or her knowledge, and results in very ineffective teaching. .
Second, a good teacher has to have ability to explain clearly. He or she has to demonstrate using modern methods of teaching in order to make subject understandable for students. For example, my history teacher in eighth grade of elementary school, Mr. Asim, made a history class very pleasant, which I never liked before. His way of teaching was original which consisted of many discussions with students. He enjoyed making us think about some controversial issues, and he taught us how to make clear some things by ourselves. He never forced us to memorize the things ; his motto was"use your head", and he really taught us how to do it. If a student understands a subject, and feel free to express his or her opinion in the class, we can say that a teacher did a good job.
Finally, a good teacher has to have good relations with students. He or she should always be ready to talk with students if they need that.