There are 2 answers here:

On older version of Linux (Redhat 5 and lower):

Put D3 into the /etc/inittab file

p000:2345:once:d3 -0 -n pick0 -a x tty12

Then issue "telinit q" to cause Linux to start D3.

On newer versions of Linux (Redhat 6 and higher) inittab is deprecated so we have to use Upstart

There is now a directory called /etc/init. We must place our d3 boot configuration file in there.

vi /etc/init/d3.conf

# D3 Database start on last console tty12 (alt F12)
description "D3 database server"
start on stopped rc RUNLEVEL=[2345]
exec /usr/bin/d3 -0 -a x -t tty12

Once you save the d3.conf file, you can start D3 one of 2 ways:
1) Reboot and it will start, a good final test
2) Use the command "initctl start d3" and it will execute this new d3.conf file.
To see if it is really running issue this command: 
# initcl status d3
d3 start/running, process 5547

To stop d3, just login to D3 and issue the normal shutdown command at TCL. Also, there is d3 -k in Linux but only use this as a last resort.

# start d3
d3 start/running, process 5547

# initctl status d3
d3 start/running, process 5547