I have deployed the same Smart Contract twice on the Ropsten Testnet using Truffle (i.e. truffle migrate --compile-all --reset --network ropsten). The second deployment generated a new contract address, different than the initial one. If I use the web3 command smartContractName.address, the second address is returned.
I was wondering what happen to the first Smart Contract deployed at the initial address? Is it still accessible somehow? What would happen if I did the same on Mainnet (besides costing me real ETHs, of course)? Is the behaviour identical?