I see you asked this question all over.
There is a kernel limit you have to deal with, kern.maxfiles which is the kernel limit and can't be exceeded when setting ulimit.
See the Krypted blog page Maximum Files in Mac OS X for a description on how to manipulate kern.maxifiles using sysctl.
I haven't loaded Yosemite on my Mac yet. The sysctl -w kern.maxfiles=65000
works on Mavericks, which has the same kern.maxfiles=12288 limit by default.
I checked on my VM OS X 10.6.8 and it had the same limit which begs the question of how it was previously working prior to your OS X version.
There's a slide share (DB2 for Mac OS X Installing and setting up DB2 for Mac OS X) showing the recommended limits for using DB2, see Increase System Parameters page 7.
Increase System Parameters
Open /etc/sysctl.conf (or create it if it doesn't already exists) and insert the following settings. These settings increase some settings for shared memory and user limits that DB2 needs in order to work on Mac.
Add the following to /etc/sysctl.conf
kern.sysv.shmmax=1073741824
kern.sysv.shmmin=1
kern.sysv.shmmni=4096
kern.sysv.shmseg=32
kern.sysv.shmall=1179648
kern.maxfilesperproc=65536
kern.maxfiles=65536
It sounds like you lost your /etc/sysctl.conf
file when you upgraded.