I can understand the Russian sticking point of the Black Sea fleet stationed at Sevastopol, and the majority population in Crimean are in fact Russians, not Ukrainians. Most of the local population would prefer to be part of Russia.
However, there is a large sea, the Sea of Azov, which serves much of Southern Ukraine including the historic Ukrainian city of Kharkov, which has in the past been its capital. The only way out of this sea is through the Strait of Kerch, currently with Russia on one side and Ukraine on the other. If Crimea were to pass to Russia, then this strait would be entirely under Russian control, and Ukrainians could be denied a vital sea route, and a long detour across the Dnieper for a heavily populated region. It would therefore be utterly unacceptable to the Ukrainians for Crimea to be part of Russia.
The only other way out of this sea is through new channels around Perekop - an immense undertaking and really not worth the aggravation and expense if a political solution can be found. Retaining the Eastern part of Crimea between Feodosiya and Kerch as part of Ukraine is difficult too, since this region speaks little Ukrainian and is even closer to Russia. One answer though might be to limit the partition of Crimea just to Kerch and lands around, including the long peninsula stretching almost to the Ukrainian mainland. with three land borders, one here and two linking Crimea to the mainland.
Making Crimea independent, rather than part of Russia, would make the treaties required to keep land and sea links going a lot simpler.