Database:

A collection of physical operating system files or disks. When using
Oracle Automatic Storage Management (ASM) or RAW partitions, the database
may not appear as individual, separate files in the operating system, but the
definition remains the same.

 

Instance:

A set of Oracle background processes or threads and a shared memory
area, which is memory that is shared across those threads or processes running on
a single computer. This is the place for volatile, nonpersistent stuff, some of which
gets flushed to disk. A database instance can exist without any disk storage
whatsoever. It might not be the most useful thing in the world, but thinking about
it that way definitely helps draw the line between the instance and the database.