From: Todd E Thomas Date: July 29 2010 3:45pm Subject: Re: Automate Install/Configuration of MySQL on Linux List-Archive: http://lists.mysql.com/mysql/222364 Message-Id: <4C51A226.7060709@ssiresults.com> MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="------------010403010102000704040309" --------------010403010102000704040309 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 8bit To answer both emails... My first install is Puppet :) 1) I have many clients (schools with Macs/Linux) that could use this package. This is in the works - good call. For the sake of DRP (Disaster Recovery Planning) I automate all of my installs on the 1% off-chance that my backups are partially fouled for some reason. 2) I used the .sql file that you recommended and wow - it's so much easier than expect. Once I had the right key-words (mysql .sql script) Google returned the right pages: 4.5.1.4. Executing SQL Statements from a Text File http://dev.mysql.com/doc/refman/5.0/en/batch-commands.html The problem I have now is variable substitution. But, that's another thread. Thanks guys, TT On 07/27/2010 11:40 PM, Andrés Tello wrote: > just place all your sql sentences in a file, setup the database and > then use: > > mysql -uroot -hlocalhost < file_with_allsql_you_need.sql > or > cat file_file_with_allsql_you_need.sql | mysql -u root -hlocalhost > > and you are done. > > > On Tue, Jul 27, 2010 at 3:56 PM, Todd E Thomas > > wrote: > > I'm looking for automation direction... > > I've found many packages that sit on top of MySQL. For the > purposes of consistency I'd like to automate these installs. > > I've been able to automate the install and configuration of > everything except the mysql part. > > I'm using CentOS 5.5. Installing/verifying is no big deal. > > It's the MySQL configuration that's holding me up. > > Basically I've created an expect script. It works 99% but it's a > PITA to finish. Here's what I'd like to accomplish: > *Set the default admin password > # mysqladmin -u root password 'root-password' > > *login to mysql > mysql> mysql -u root -p > > *Drop the anonymous accounts > mysql> DELETE FROM mysql.user WHERE user = ''; > > *Sync all of the root passwords > mysql> UPDATE mysql.user SET Password = > PASSWORD('root-password') WHERE User = 'root'; > > *Remove the test database: > mysql> drop database test; > > > In another script I would like to create databases for specific > packages. EG: > Concrete5, for example needs: > GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, ALTER ON > concrete5.db TO 'admin'@'localhost' IDENTIFIED BY 'admin-password'; > > > > If there is a better way to do this than using expect I would > greatly appreciate any pointers in the right direction. Bash is > comfortable for me and perl is within reach. I'm not much versed > in anything else right now. > > > -- > Thanks for the assist, > > Todd E Thomas > "It's a frail music knits the world together." > -Robert Dana > > -- > MySQL General Mailing List > For list archives: http://lists.mysql.com/mysql > To unsubscribe: > http://lists.mysql.com/mysql?unsub=mr.criptos@stripped > > --------------010403010102000704040309--