I'm sorry, while the idea is sound (use space in /srv instead of in /var), the suggested solution is majorly wrong.
makes a directory alternatively available in a new place. It's effectively a hard link for a directory (that also doesn't need to stay in the same filesystem, as hard links have to do). You still don't get any more space in either /var/cache or /srv/tmp_var_cache with that, as they're the same thing after the mount --bind.
What you want is use /srv/tmp_var_cache instead of /var/cache. And you only need to do this for package management, that is /var/cache/zypp, not for the whole of /var/cache, and you can just use a symbolic link, not a mount --bind. Therefore the solution is like this:
move content (wil take a while)
mv /var/cache/zypp /srv/tmp_var_cache_zypp
ln -s /srv/tmp_var_cache_zypp /var/cache/zypp
If you wanted to use mount --bind, what you need is
move content (as above)
create mount point
mount --bind /srv/tmp_var_cache_zypp /var/cache/zypp
You need to run the mount --bind after every reboot and before the automatic update check starts, or there'll be hell's bells. I'd try the symlink first...
Of course the other thing to look at is whether tojust change the location of the package cache in /etc/zypp/zypp.conf ...