I am coming from a SQL server 2008 background. I have a mysql local server running, and I wanted to set up some scheduled jobs via the sql agent. I have found some sketchy third party sql agents for mysql but none built in. Is there a sql agent or a recommended one for mysql? Thank you.
Usual approach is to set up a cron job to run a script. I used to use Perl for the scripts, but bash etc will do it as well.
Related
sorry if title is not so clear, probably I am not finding what I need due I do not know how to search
I have few MySQL servers is separated online servers (from different wordpress) and I want to load some of the data on those databases/tablets into a SQL database located on Azure.
inside Azure portal itself I do not see where to establish external connections, neither at server level, neither at database level
I download and install Microsoft SQL Server Management Studio, connect to the server, I can see my databse and the master one, Security with logins, and Integration Service Catalog, nothing else.
I was looking for something like:
https://www.jetbrains.com/help/go/db-tutorial-connecting-to-ms-sql-server.html#step-3-connect-to-microsoft-sql-server-with-datagrip
but nowhere ...
maybe something like this:
https://www.devart.com/odbc/mysql/docs/microsoft_sql_server_manager_s.htm
but no Servers objects option available on my SSMS
Can be this done?
Note: Azure database is a basic wfor now, if that is a limitation
Some choices.
In your SQL Server Management Studio create a linked server pointing to each MySQL instance. You found the instructions for that. https://www.devart.com/odbc/mysql/docs/microsoft_sql_server_manager_s.htm But it probably will not work in Azure SQL Server; you don't have access to the underlying Windows OS to install stuff like MySQL ODBC drivers, which you need. (You could ask Azure techsupport if they can help.)
In each MySQL instance, try creating a federated table connection to appropriate table in SQL Server. That cross-vendor federation stuff only works in MariaDB, however; MySQL's federation only goes MySQL <--> MySQL.
Write yourself a purpose-built extract / transform / load (ETL) program, and arrange to run it every so often. Program it to connect to all the servers involved, retrieve the data needing to be transferred from your MySQL servers, and update / insert that data on the SQL server.
(edit) You may be able to use command-line SQL client programs. mysqldump, with its --compatible option, may generate usable INSERT statements in a file. You then may be able to use sqlcmd to run those INSERTs on your Azure server. It's going to take some hacking, and may take using sed(1) or awk(1) to make the MySQL output compatible with SQL Server.
I believe the third option is the most robust one for production use.
I just begin programming applications, and I need to install a demo of my software. But I read on internet that if I install a software using MySQL, I have obligation to give my source code except if I pay annual licence.(contacted Oracle support 3 months ago, but never got answer).
That's why I decided to transfer database on SQL Server, but now I meet that problem to install it on client's server, any advise about it also would be welcome. Thanks
I have a database in MySQL, and I would like to copy it on Microsoft Server 2017 through MS Server Migration.
On my local computer it works perfectly, but when I try to do it on the server, I have the following warning : SQL Server is not running. You must start SQL Server Agent to use Server-side data migration engine.
When I check services, I see in fact that no agent is running.
Looking on internet, I read that on SQL Express there is no Agent service, and I need to buy SQL Server Entreprise?
you can use data migration Free BI tools like pentaho PDI
By using this you can easily migrate data from MSSQL to MYsql
How to schedule a SQL Server 2014 job without the Agent or T-SQL ? Is it possible using stored procedures? I need to schedule a weekly job on SQL Server 2014. I know how to do it using a batch file in Windows, if there are any other ways please let me know. Thanks in advance !
This is old, but I'm looking for something similar, and recently came across a solution that discusses using the SQL Server Service Broker to accomplish this.
These two posts from SQLTeam -- Scheduling Jobs in SQL Server Express and Scheduling Jobs in SQL Server Express - Part 2 -- are written with SQL Server 2005 Express in mind, and they discuss how to use BEGIN CONVERSATION TIMER to set up scheduled tasks without using a SQL Server Agent.
That all being said, in this particular case, another couple of options come to mind:
If you know how to do it using batch files in windows, then you could consider just using the Windows Task Scheduler with SQLCMD.
Based on your comment that they have SQL [...] Enterprise Edition (64-bit), I believe that they do have SQL Server Agent, and they just need to add your account to the SQLAgentUserRole.
I'm looking for some advice over the best way to transfer data from a local MSSQL DB to a remote MYSQL database every 5 mins?
At the moment I am using a tool called SQLYOG which allows me to create a connection to my local MSSQL database and to my remote MYSQL server and set up some queries and mapping.
It also allows me to create a windows scheduled task which runs every 5 minutes.
This solution has been working ok but is only about 95% reliable and seems to struggle sometimes.
This software runs in GUI mode and via cmd prompt so is reasonably light weight when running a scheduled task.
Does anyone know of any other light weight tools or methods I can use to get the same outcome?
You can use SymmetricDS. its a good & efficient open source tool for this purpose.
you can use SSIS packages to do that.
SQL Server Integration Services (SSIS) is a component of the Microsoft SQL Server database software that can be used to perform a broad range of data migration tasks.
Couple of options:
1. create linked server to mysql then copy rows via linked server in sp, set sql job to execute.
2. build ssis package and run it in sql job.
What I feel is the best soultion for this is to design an ETL job using either SSIS or Talen Open Studio.
I have written a query I want to run against a MySQL db every hour and then email the results to a fixed email address. I know how to do this using DTS on SQL server but have no clue how to do it on MySQL. Does MySQL have an equivalent to DTS.
You could just write this using your favorite scripting language and then set it up as a cron job.
What I ended up doing is downloading the MySQL connector for SQL Server and then used CDO in VB Script to send the email.