学習者のレベルにもよりますが、ここでは学習者がまったくの英語初心者であることを前提に話を進めていきます。
まず、英語初心者は高校卒業〜大学受験程度の文法知識をマスターすることを最初の目的としましょう。
TOEIC900点を目指すというのであれば不足していますが、大学受験レベルの文法知識があればTOEIC700点くらいまでは十分に到達可能です(私自身がそうです)

中学生レベルの文法知識を学ぶ
まず英語初心者は中学レベルの文法参考書、あるいは教材を購入して英語学習を進めていくうえで最低限の基礎文法を身につけてください。
初心者にオススメなのは『
ゼロからの英語やり直し教室』という、
英文法なんてなにも分からない!という人を対象にした通信講座です。
冠詞ってなに?接続詞ってなに?…という超入門レベルの人にも易しく講義してくれる講座で、実は私自身もかつて受講したことがあります。

高校生レベルの文法知識を学ぶ
いきなり大学受験レベルの問題集などに挑戦するのは無理が伴うので、中学英語から高校英語まで広くまとめた文法解説書などを購入して、それ1冊を何度も読みこんでいきます。
私自身は『
総合英語FOREST』という文法書を3回ほど通読しましたが、これは本当に役立ちました。
いわゆる分厚い参考書タイプですが、カラフルなイラストが多くとっつきやすく、品詞なども丁寧に説明されているので、
むしろ中学レベルからでも使えるくらいです。

文法知識を広く活用してみる
文法知識を身につけたら、その文法知識をより広いフィールドに拡大していきます。
たとえば『
山口英文法講義の実況中継』では、
他の英文法書で身につけた知識をどのように展開して柔軟に解釈するか…という問題に焦点を当てており、大学受験を控えた高校生から圧倒的な支持を得ている良書です。
この段階まできたら大学受験用の文法問題集などにも取り組んでみましょう。

TOEIC文法問題に挑戦
文法学習の仕上げとして、必要に応じてTOEICテストの文法問題集、リーディング問題集に挑戦してみてください。
TOEICの文法問題は、大学受験レベルの文法を身につけただけでは太刀打ちできない…という意見も多々あります。
たとえば『どの解答(選択肢)も正しく見え、どこに間違いがあるかわからない』といった悩みを抱える人が多いようなのです。
そのように感じるのは『文法を暗記すること』に頼ってきたからかもしれません。
文法は暗記したデータベースに基づいて『解く』ものではなく、身体に染み付いた経験によって『解く』ものです。
文法を丸暗記に頼ってきた人は、
多くのTOEIC学習者から高い評価を得ている通信講座『
分かる!解ける!英文法』を受講してみてください。
丸暗記ではなく、文法の論理+背景知識を学ぶことで、理屈で問題を解けるようになるはずです。