?
Solved

mySQL command like MSSQL EXEC?

Posted on 2010-08-12
8
Medium Priority
?
815 Views
Last Modified: 2012-05-10
In MSSQL, you have access to the command line using the EXEC xp_cmdshell 'DOS command goes here'.

Is there anything like this using mySQL to run a PHP script?

0
Comment
Question by:EddieShipman
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
  • 2
  • +1
8 Comments
 
LVL 31

Expert Comment

by:Frosty555
ID: 33423112
mysql has a CLI, just like mssql. It's in the mysql BIN folder, and it's just the executable file "mysql.exe"

You execute mysql queries using it, though, not PHP.

PHP has it's own command line executable which will execute a PHP page though, PHP.EXE.
0
 
LVL 17

Expert Comment

by:jrm213jrm213
ID: 33423114
I don't believe there is for security reasons.
0
 
LVL 31

Expert Comment

by:Frosty555
ID: 33423237
I think I misunderstood the question. |Sorry about that.

PHP has an exec() function for this purpose (provided your server has it enabled) - does that not work for you?

http://php.net/manual/en/function.exec.php

0
Get real performance insights from real users

Key features:
- Total Pages Views and Load times
- Top Pages Viewed and Load Times
- Real Time Site Page Build Performance
- Users’ Browser and Platform Performance
- Geographic User Breakdown
- And more

 
LVL 17

Accepted Solution

by:
jrm213jrm213 earned 2000 total points
ID: 33423278
I think he means in a MS SQL Stored Procedure you can use the EXEC command to execute code via the DOS Command Shell, and wants to know if there is similar functionality in MySQL, which there isn't as far as I know.
0
 
LVL 26

Author Comment

by:EddieShipman
ID: 33424401
yes, jrm213jrm213, exactly what I need. I don't think the others quite understood. ;-)

I'm not saying MSSQL is any more secure than mySQL, BTW, but if it's for security reasons, why would MSSQL have something like it?

The whole reason behind this is that I have a stored procedure where I need to actually download a file and store the file name in the database. This is for a vendor file import routine for my e-commerce solution. The images are links and I can do it in PHP but I *NEED* to do it in my stored proc.

I have a PHP script to do the import but have converted the whole thing to mySQL functions and stored procedures to speed up the process and that is the last thing on the agenda, importing the image.

0
 
LVL 25

Expert Comment

by:Tomas Helgi Johannsson
ID: 33427785
                Hi!

Here are some PHP MySQL procedure examples
http://www.java2s.com/Code/SQL/Procedure-Function/CallingastoredprocedureinPHPanddealwiththeresult.htm
http://www.java2s.com/Code/SQL/Procedure-Function/ReturnthefilesizebyusingtheLOADFILEfunction.htm
http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_load-file

which gives you an idea on how to call procedure and insert a image/file into blob using LOAD_FILE function.

Regards,
   Tomas Helgi
0
 
LVL 25

Expert Comment

by:Tomas Helgi Johannsson
ID: 33427840
       Hi!

One other thing. You would have to download the images  from a remote website to your site temporarily (to a tmp directory) using PHP and then issue a
call to the MySQL procedure to store the file to db.

Regards,
    Tomas Helgi
0
 
LVL 26

Author Comment

by:EddieShipman
ID: 33428338
I cannot do that without some kind of EXEC functionality because my procedure iterates through the records of the import file that was loaded into a table using LOAD DATA INFILE.
Since the file must already reside on the host, LOAD_FILE ain't gonna do that for me.

I don't need to load them in a BLOB field because the local filenames are stored in a table,
like it should be .vs in a BLOB.

BTW, I already know how to call the stored proc from PHP.

Since this seems undoable, I may just do the images after the initial data load.
0

Featured Post

Get free NFR key for Veeam Availability Suite 9.5

Veeam is happy to provide a free NFR license (1 year, 2 sockets) to all certified IT Pros. The license allows for the non-production use of Veeam Availability Suite v9.5 in your home lab, without any feature limitations. It works for both VMware and Hyper-V environments

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Does the idea of dealing with bits scare or confuse you? Does it seem like a waste of time in an age where we all have terabytes of storage? If so, you're missing out on one of the core tools in every professional programmer's toolbox. Learn how to …
In this blog post, we’ll look at how ClickHouse performs in a general analytical workload using the star schema benchmark test.
In this video, Percona Solution Engineer Dimitri Vanoverbeke discusses why you want to use at least three nodes in a database cluster. To discuss how Percona Consulting can help with your design and architecture needs for your database and infras…
In this video, Percona Solution Engineer Rick Golba discuss how (and why) you implement high availability in a database environment. To discuss how Percona Consulting can help with your design and architecture needs for your database and infrastr…

771 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question