Yes. Random key it is the best decision, but problem that it is easy forget this random key.
Forget? Normally human can't even remember number with length above 10, let alone private with 256-bit length (or 64 if you try to remember HEX format)
I realised the other day that I still remember a few (randomly generated) 10 character passwords that I haven't used for years, and if I put them together, they could form a fairly strong 40 character brainwallet phrase. The difference with those passwords is that they were protecting access to a server, and if I forgot them, I could recover access in some other way (boot with rescue disk, phone call to data centre etc). Different matter if I forgot my brainwallet password.

---------
I've seen someone (I think ryanc) mention before using a combination of a passphrase plus a random (weakish) seed. The seed needs to be printed out and stored somewhere safely. The beauty of this arrangement is that the seed is weak enough to be expendable, but strong enough to add some extra protection against casual hunting. If the seed is lost, you can use a program to brute force it until it finds a match for your brainwallet address. The strength of the seed is chosen so that some time (say one to two days) of brute forcing would be required.
It won't stop an attacker who is focussed specifically on you, but it will add extra protection against people who are just hunting for any passphrase matches.
You could also store some funds using the passphrase alone, using that brainwallet as a canary to alert you that someone has discovered your passphrase. For example:
10 BTC in the brainwallet-with-seed "MYPASSPHRASE_sVjH$4R"
0.1 BTC in the canary brainwallet "MYPASSPHRASE"
Disclaimer: I mention this only out of interest and don't represent that it would necessarily be secure. I don't think SHA256 brainwallets are secure anyway, so...