Thanks for the follow-up and update. Glad to know #2 is working fine.
I understand you are looking to import data from a SQL database that is not on an Azure VM, based on my understanding of your scenario, you can use the Azure SQL indexer. You can create a data source by providing a connection string to the SQL database. You can then map the source fields to equivalent fields in the index. During execution, the rowset is automatically transformed to JSON and loaded into the specified index.
You can use the Import Data wizard in the Azure portal to create and load an index, and optionally invoke AI enrichment using built-in skills for natural language processing, translation, OCR, and image analysis.
Checkout these docs for more info:
Import data wizard in Azure Cognitive Search
Index data from Azure SQL
Data import in Azure Cognitive Search