What is the difference between these two sentences?
They seem very close in meaning.
The difference is,
只要 is used for the only condition, while
如果 usually doesn't.
[ As long as it doesn't rain tomorrow, ... ]
"It doesn't rain tomorrow" is the only one condition, the other things don't matter, e.g.
wind blowing. So you could follow the sentence with
即使刮风我们也去。 (Even it's windy we still will go.)
[ If it doesn't rain tomorrow, ... ]
"It doesn't rain tomorrow" isn't the only condition, that means if it's windy tomorrow, we might not go climbing too.