@Arief Hardiansyah
Review the list of linked servers defined on the SQL Server and find out the OLEDB provider associated with it. Then install the OLEDB provider using the software from the corresponding vendor. Ensure that you are also installing the provider that corresponds to the platform [x86 or x64] of SQL Server.
To get a list of installed OLEDB providers, use the SQL Server Management Studio and navigate to the "Server Objects" node and expand the "Linked Server" node. You could also use the catalog view sys.servers to find the list of all defined linked servers and their associated OLEDB providers.
If you are using SQL Server Enterprise Manager, open Server Objects -- Linked Servers -- Providers, right click on the "MSOLEDBSQL" provider, select properties and check the "Allow inprocess" option. Recreate your linked server and test again.
You can also execute the following query if you don't have access to SQL Server Management Studio :
EXEC master.dbo.sp_MSset_oledb_prop N'MSOLEDBSQL', N'AllowInProcess', 1
If needed, restart the MSSQL Service in order for the "allow inprocess" option to take effect.