Render checkpoints during long renders
It's standard practice to do this with animations, as described in this video.  If your scene has no animation, you can use the same technique for still images by rendering one vertical strip at a time, by animating the camera settings.

For example, to render the image in 20 vertical strips, set the horizontal resolution of your image to 1/20 of the desired image width, and set the Frame Range to 1...20.  Then with the camera selected, add keyframes to the X Shift property:




Set X Shift to -0.95 in frame 1 and 0.95 in frame 20.  Go to the graph editor and make sure the property is using linear interpolation.  The curve should be a straight line like this:



After rendering your scene as an animation (using the method described in the video), you will have twenty images that you can stitch together using Photoshop or Gimp.