A few things.
First, as of MySQL 5, you can make VARCHARs larger than 255 characters. And you can't be possible be using your user agent strings for anything signficant, a truncation at 500 would be reasonable too (for 1% of the time that happens anyway).
Second, URLs aren't much different -- seriously, how long are your URLs? Not more than 1000 characters even if you tried really, really hard -- unless you have crazy GETs.
Third, TEXT is very, very, very evil -- don't use it for simple strings.
Fourth, don't pull them out.