Re: PHP / Mysql people question

2004-08-26 Thread Dobromir Velev
Hi,
First mysql_fetch_row() returns an array so it doesn't make much sense to 
compare it to 5. If you want to check tne number of records the query has 
returned you should use mysql_num_rows() - like this

if(mysql_num_rows($result)=5){ }

or if you want to check the value returned by the query something like this 
should work though I would personally add some additional error testing.

if(mysql_result($result,0,0)=5){ }

HTH
-- 
Dobromir Velev
[EMAIL PROTECTED]
http://www.websitepulse.com/


On Wednesday 25 August 2004 18:02, Stuart Felenstein wrote:
 Thought earlier that I could get by on just plain SQL.

 Php needed.  I'm getting a parse error on the if
 line.
 This is supposed to be a trigger then before
 transaction counts the number of rows , id already
 inserted, if exceeded , kick back error message , halt
 transaction.
 Not sure where I need to go with this statement to
 make it work. Ideas , help, suggestions welcome!

 //start trigger Trigger1
 function KT_TriggerSTARTER_Trigger1($tNG) {
 $result = mysql_query(SELECT LurkTitleTim.LurkID
 WHERE
 LurkID='$new_input');

 if ($row=mysql_fetch_row($result) = 5) {  error- data
 already exists   }

 else { go ahead and add data with INSERT statement
 }
 }

 Thank you ,
 Stuart



-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



RE: MySQL Secure Connection(e.g. SSL) Question

2004-08-26 Thread Greg . Cope
Ah

I did not know that.  Excellent.

Still does not get round the issue that MySQL in most default binary
distributions does not include SSL.  Which I think is a shame, but then
again is probably a lib issue.

Thanks for that.

Greg

 -Original Message-
 From: Eamon Daly [mailto:[EMAIL PROTECTED]
 Sent: 25 August 2004 19:28
 To: [EMAIL PROTECTED]
 Subject: Re: MySQL Secure Connection(e.g. SSL) Question
 
 
 FYI, DBD::MySQL does support SSL. See
 
 http://search.cpan.org/~rudy/DBD-mysql-2.9004/lib/DBD/mysql.pm
 
 and search for mysql_ssl. You'll need to provide
 
 mysql_ssl_client_key
 mysql_ssl_client_cert
 mysql_ssl_ca_file
 
 as part of the DSN on the perl side, and set ssl-ca,
 ssl-key, and ssl-cert on the server.
 
 There's more on the subject at mysql.com:
 
 http://dev.mysql.com/doc/mysql/en/Secure_requirements.html
 
 
 Eamon Daly
 
 
 
 - Original Message - 
 From: [EMAIL PROTECTED]
 To: [EMAIL PROTECTED]
 Sent: Tuesday, August 24, 2004 11:12 AM
 Subject: RE: MySQL Secure Connection(e.g. SSL) Question
 
 
   I need to connect to a remote MySQL database from a PC using
   SSL. I would
   prefer to connect using perl DBD. Does anyone have a
   suggestion how I can
   accomplish this task or an alternative solution?
 
  What about stunnel or ssh tunnels and then use DBD::mysql on top.
 
  ISTR that DBD::mysql cannot use SSL'ed mysql client 
 connections and your
  remote server would have to be complied to support it.
 
  Greg
 
  
   Thank You
  
  
   -- 
   MySQL General Mailing List
   For list archives: http://lists.mysql.com/mysql
   To unsubscribe:
   http://lists.mysql.com/[EMAIL PROTECTED]
  
  
 
  -- 
  MySQL General Mailing List
  For list archives: http://lists.mysql.com/mysql
  To unsubscribe:
 http://lists.mysql.com/[EMAIL PROTECTED]
 
 
 
 -- 
 MySQL General Mailing List
 For list archives: http://lists.mysql.com/mysql
 To unsubscribe:
 http://lists.mysql.com/[EMAIL PROTECTED]
 
 

-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: PHP / Mysql people question

2004-08-26 Thread Stuart Felenstein
First let me say thank you for all the responses.
Now, let me say I'm not sure what exactly I need to
do. Explanation - Primarily I have absolutely no
experience with PHP , but I can learn, so that's
helpful :)
The thing I'm trying to figure out is what I need to
learn, because currently I'm developing in
Dreamweaver, using a set of extensions from a company
call Interakt  (this isn't a advertisement or
endorsement).  Specifically using the Impakt
extensions.  So , the bottom line is this is a PHP
-Adodb model.  Now all I know is that Adodb is an
abstraction layer to PHP. 

The code that wound up working for me is the following
(the KT_id are the session variables to identify the
user):

global $DBconnection, $HTTP_SESSION_VARS;

$colname__Recordset = '-1';
if (isset($HTTP_SESSION_VARS['KT_id_xxx'])) {
  $colname__Recordset =
$HTTP_SESSION_VARS['KT_id_xxx'];
}
$query_Recordset = sprintf(SELECT * FROM LurkCerts
WHERE LurkID = 
%s,
$colname__Recordset);
$Recordset =
$DBconnection-SelectLimit($query_Recordset) or
die($conn_name-ErrorMsg());
$totalRows_Recordset = $Recordset-RecordCount();

if ($totalRows_Recordset = 10)
$tNG-setError(-1,Too many table records for current
user!);

Bottom line I have no idea what language this is.  
Anyway , hope this is not a confusing post.

Thank you ,
Stuart
--- Dobromir Velev [EMAIL PROTECTED] wrote:

 Hi,
 First mysql_fetch_row() returns an array so it
 doesn't make much sense to 
 compare it to 5. If you want to check tne number of
 records the query has 
 returned you should use mysql_num_rows() - like this
 
 if(mysql_num_rows($result)=5){ }
 
 or if you want to check the value returned by the
 query something like this 
 should work though I would personally add some
 additional error testing.
 
 if(mysql_result($result,0,0)=5){ }
 
 HTH
 -- 
 Dobromir Velev
 [EMAIL PROTECTED]
 http://www.websitepulse.com/
 
 
 On Wednesday 25 August 2004 18:02, Stuart Felenstein
 wrote:
  Thought earlier that I could get by on just plain
 SQL.
 
  Php needed.  I'm getting a parse error on the if
  line.
  This is supposed to be a trigger then before
  transaction counts the number of rows , id already
  inserted, if exceeded , kick back error message ,
 halt
  transaction.
  Not sure where I need to go with this statement to
  make it work. Ideas , help, suggestions welcome!
 
  //start trigger Trigger1
  function KT_TriggerSTARTER_Trigger1($tNG) {
  $result = mysql_query(SELECT LurkTitleTim.LurkID
  WHERE
  LurkID='$new_input');
 
  if ($row=mysql_fetch_row($result) = 5) {  error-
 data
  already exists   }
 
  else { go ahead and add data with INSERT
 statement
  }
  }
 
  Thank you ,
  Stuart
 
 
 
 -- 
 MySQL General Mailing List
 For list archives: http://lists.mysql.com/mysql
 To unsubscribe:   

http://lists.mysql.com/[EMAIL PROTECTED]
 
 


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: mySQL beginner question

2004-08-26 Thread Michael J. Pawlowsky
Having duplicates is not a problem.
As long as you don't have a UNIQUE index on it.
Something else is happening in your code that is putting out the HTML I 
would guess.

P.S. It should be SELECT * FROM  jspCart_products;
(your table, not your database)

B Wiley Snyder wrote:
Hello, hope this is the right list
I created a table with the following code
CREATE TABLE jspCart_products (
ProductID int primary key,
CategoryID int,
ModelNumber varChar(75),
ModelName varChar(250),
ProductImage varchar(250),
UnitCost decimal(9,2),
Description BLOB,
);
The CategoryID has duplicate entrys. When I use SELECT * FROM 
mydatabase I see the categories just fine but when they are sent to an 
html page they are null values. Would that be a screw-up in my code or 
is it becuase I need to specify when I initially build the table like 
above that it uses duplicates? i hope that makes sense and thanks for 
replys in advance.



--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]


Re: PHP / Mysql people question

2004-08-26 Thread Stuart Felenstein
Right, I am not on any list for a line by line feed /
analysis. Actually I tried signing up twice yesterday
for the PHP general and never received email
confirmation.  Anyway sure I'll find my way !
Thank you
Stuart


--- [EMAIL PROTECTED] wrote:

 i would suggest that your questions would be more
 appropriately asked 
 on the php mailing list. one suggestion, however.
 look at the php 
 documentation and get a general understanding of
 things first. 
 [there's been a spate of people basically asking for
 line-by-line 
 debugging of their code which has caused the read
 the manual bar to 
 be pushed somewhat higher.]
 
 
 -- Original Message --
  From: Stuart Felenstein [EMAIL PROTECTED]
  To: [EMAIL PROTECTED], [EMAIL PROTECTED]
  Date: Thursday, August 26, 2004 02:19:34 AM -0700
  Subject: Re: PHP / Mysql people question
 
  First let me say thank you for all the responses.
  Now, let me say I'm not sure what exactly I need
 to
  do. Explanation - Primarily I have absolutely no
  experience with PHP , but I can learn, so that's
  helpful :)
  The thing I'm trying to figure out is what I need
 to
  learn, because currently I'm developing in
  Dreamweaver, using a set of extensions from a
 company
  call Interakt  (this isn't a advertisement or
  endorsement).  Specifically using the Impakt
  extensions.  So , the bottom line is this is a PHP
  -Adodb model.  Now all I know is that Adodb is an
  abstraction layer to PHP.
 
  The code that wound up working for me is the
 following
  (the KT_id are the session variables to identify
 the
  user):
 
  global $DBconnection, $HTTP_SESSION_VARS;
 
  $colname__Recordset = '-1';
  if (isset($HTTP_SESSION_VARS['KT_id_xxx'])) {
$colname__Recordset =
  $HTTP_SESSION_VARS['KT_id_xxx'];
  }
  $query_Recordset = sprintf(SELECT * FROM
 LurkCerts
  WHERE LurkID =
  %s,
  $colname__Recordset);
  $Recordset =
  $DBconnection-SelectLimit($query_Recordset) or
  die($conn_name-ErrorMsg());
  $totalRows_Recordset = $Recordset-RecordCount();
 
  if ($totalRows_Recordset = 10)
  $tNG-setError(-1,Too many table records for
 current
  user!);
 
  Bottom line I have no idea what language this
 is.
  Anyway , hope this is not a confusing post.
 
  Thank you ,
  Stuart
  --- Dobromir Velev [EMAIL PROTECTED] wrote:
 
  Hi,
  First mysql_fetch_row() returns an array so it
  doesn't make much sense to
  compare it to 5. If you want to check tne number
 of
  records the query has
  returned you should use mysql_num_rows() - like
 this
 
  if(mysql_num_rows($result)=5){ }
 
  or if you want to check the value returned by the
  query something like this
  should work though I would personally add some
  additional error testing.
 
  if(mysql_result($result,0,0)=5){ }
 
  HTH
  --
  Dobromir Velev
  [EMAIL PROTECTED]
  http://www.websitepulse.com/
 
 
  On Wednesday 25 August 2004 18:02, Stuart
 Felenstein
  wrote:
   Thought earlier that I could get by on just
 plain
  SQL.
  
   Php needed.  I'm getting a parse error on the
 if
   line.
   This is supposed to be a trigger then before
   transaction counts the number of rows , id
 already
   inserted, if exceeded , kick back error message
 ,
  halt
   transaction.
   Not sure where I need to go with this statement
 to
   make it work. Ideas , help, suggestions
 welcome!
  
   //start trigger Trigger1
   function KT_TriggerSTARTER_Trigger1($tNG) {
   $result = mysql_query(SELECT
 LurkTitleTim.LurkID
   WHERE
   LurkID='$new_input');
  
   if ($row=mysql_fetch_row($result) = 5) { 
 error-
  data
   already exists   }
  
   else { go ahead and add data with INSERT
  statement
   }
   }
  
   Thank you ,
   Stuart
 
 
 
  --
  MySQL General Mailing List
  For list archives: http://lists.mysql.com/mysql
  To unsubscribe:
 
 

http://lists.mysql.com/[EMAIL PROTECTED]
 
 
 
 
  --
  MySQL General Mailing List
  For list archives: http://lists.mysql.com/mysql
  To unsubscribe:
 

http://lists.mysql.com/[EMAIL PROTECTED]
 
 -- End Original Message --
 
 


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: mySQL beginner question

2004-08-26 Thread Rhino

- Original Message - 
From: B Wiley Snyder [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Sent: Thursday, August 26, 2004 1:56 AM
Subject: mySQL beginner question


 Hello, hope this is the right list

 I created a table with the following code


 CREATE TABLE jspCart_products (
 ProductID int primary key,
 CategoryID int,
 ModelNumber varChar(75),
 ModelName varChar(250),
 ProductImage varchar(250),
 UnitCost decimal(9,2),
 Description BLOB,
 );

 The CategoryID has duplicate entrys. When I use SELECT * FROM mydatabase
 I see the categories just fine but when they are sent to an html page they
 are null values. Would that be a screw-up in my code or is it becuase I
 need to specify when I initially build the table like above that it uses
 duplicates? i hope that makes sense and thanks for replys in advance.

It's not clear to me what you are saying when you say that CategoryID has
duplicate entries. Do you mean that you have this in your table:

ProductIDCategoryIDModelNumberModelNameProductImage
UnitCostDescription
11  B200Starburst
blahblahblah50.00x'...'
21  C240Stonehenge
foofoofoofoo30.00x'...'

i.e. products that have different product numbers have the same category ID?
If so, is that what you want in your table? It seems perfectly reasonable to
me to have this situation in your table.

When you say that the CategoryID is appearing as a null in your HTML
reports, do you mean that they are not null in the tables? If that is the
case, then it is almost certainly something in your code isn't handling the
values in the CategoryID column correctly. You may want to post the code
that reads the rows of the tables and formats it for the HTML page if you
can't find the problem yourself.

To be absolutely sure that the nulls being displayed by the program are
bogus, run this query from your command line:

select ProductID, CategoryID
from yourtable
where CategoryID is null

If this query produces an empty result, you can be dead certain that your
program is turning non-null CategoryIDs into nulls. If this query produces a
non-empty result, check the HTML report and see if the rows containing null
CategoryIDs match exactly the rows that contain nulls in the command line
query; if they do, your application code is working perfectly and your table
data has nulls in the CategoryID.

Rhino




-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: Slow Queries on Fast Server?

2004-08-26 Thread JVanV8
I'm gathering by the lack of response that perhaps MySQL is incapable of executing a 
count of the number of fulltext matches on 3 million rows.  
I really thought that MySQL 4 was really suppose to be able to handle such a load
I still think my configuration may be to blame
?
- John






--
Could you send the output of an EXPLAIN for your query?

Sure, pretty sure the index is fine though:

mysql EXPLAIN SELECT COUNT(*) FROM product_fulltext WHERE MATCH (search_text) AGAINST
 ('black');
+--+--+---+-+-+--+--+-+
| table| type | possible_keys | key | key_len | ref  | rows |
Extra   |
+--+--+---+-+-+--+--+-+
| product_fulltext | fulltext | search_text   | search_text |   0 |  |1 |
Using where |
+--+--+---+-+-+--+--+-+
1 row in set (0.00 sec)




[EMAIL PROTECTED] wrote:
Have you checked the Optimization section of the manual yet?
http://dev.mysql.com/doc/mysql/en/MySQL_Optimization.html
 
 
 Oh yes, as I've attempted to configure the my.cnf file for best performance.  The
 query is correct.  The fulltext index is correct as I built the fulltext index on
 the
 single column (took 9 minutes) and even did repair and optimize on the table...
 so I
 don't think its the index.  I'm thinking its the server config...
 
 - John
 
 
 
 [EMAIL PROTECTED] wrote:
 
I'm running into a problem with some queries running on a dedicated mysql server
 (2.0
GHz, 2GB RAM).  Fulltext searching really exemplifies this as most MATCH, AGAINST
 queries
are taking 5-20 seconds.  Performance was excellent for some reason one day (0.2
 -
 0.75
seconds) but it was only fast for a day or so.
Here's the rundown:

TABLE:  fulltext_table (some_id, the_text) 
Rows: 3,237,981 
Type: MyISAM
Size: 920.8 MB 

QUERY: SELECT COUNT(*) FROM fulltext_table WHERE MATCH (the_text) AGAINST
 ('blue');
or 
QUERY: SELECT SQL_CALC_FOUND_ROWS some_id FROM fulltext_table WHERE MATCH
 (the_text)
AGAINST ('blue') LIMIT 0, 20;

Both are problematic.  I even tried placing a limit of 2 on the first query
 but
it didn't improve anything.  The table has a fulltext index on the column and is
optimized.  No other users are connected to the server.

Is there a RED FLAG in here somewhere?

MySQL configuration settings (using my-huge.cnf template):
key_buffer = 500M
max_allowed_packet = 1M
table_cache = 512
sort_buffer_size = 10M
read_buffer_size = 2M
myisam_sort_buffer_size = 64M
#thread_cache = 8
thread_concurrency = 8
#- Modifications --- #
ft_min_word_len = 3
set-variable = table_cache=1024
set-variable = max_heap_table_size=64M
set-variable = tmp_table_size=128M
set-variable = query_cache_limit=2M
query_cache_type=1


Performance Test:
SELECT COUNT(*) FROM fulltext_table WHERE MATCH (the_text) AGAINST ('white');
+--+
| COUNT(*) |
+--+
|95074 |
+--+
1 row in set (27.83 sec)

Statistics for vmstat 1 (my apologies if this doesn't look pretty):
---
procs  memory  swap  io system cpu
 r  b   swpd   free   buff  cache   si   sobibo   incs us sy id wa
0  0  19500  17800  42432 177172800 060  11330  0  0 99  1
 0  1  19500  21524  42428 1765728  7240   960 0  536   444  5  1 82 12
 0  1  19500  19512  42424 176782000  2348 0  912   592  0  1 50 49
 0  1  19500  17788  42424 176954000  1980 0  868   588  0  1 51 48
 0  1  19500  17568  42424 176976000  2300 0  723   401  0  0 50 49
 0  1  19500  17704  42428 176962000  193620  662   364  0  0 51 49
 0  1  19500  17560  42428 176976400  2224 0  696   400  0  0 51 49
 0  1  19500  17504  42424 176982400  2136 0  670   380  0  0 51 49
 0  1  19500  17616  42424 176971200  2228 0  693   415  0  0 51 49
 0  1  19508  17608  42420 176972408  2348 8  692   389  0  0 50 50
 0  1  19508  17532  42428 176979200  1896   108  654   366  0  0 50 49
 0  1  19512  17644  42424 176968404  2220 4  720   450  0  1 50 49
 0  1  19516  17620  42420 176971204  2104 4  707   424  0  0 51 48
 0  1  19516  17744  42420 176958800  2476 0  762   462  0  1 50 49
 0  1  19516  17532  42416 176980400  2292 0  719   401  0  0 51 49
procs  memory  swap  io system cpu
 r  b   swpd   free   buff  cache   si   sobibo   incs us sy id wa
 0  1  19516  17388  42424 176994000  221616  699   388  0  0 51 49
 0  1  19516  17632  42420 176970000  1836 0  629   380  0  0 51 49
 0  1  19516  17596  42420 176973200  2112 0  661   374  0  1 51 48
 0  1  19516  17580  42416 176975200 

ANNC: MySQL Administrator 1.0.11

2004-08-26 Thread Alfredo Kengi Kojima

MySQL Administrator 1.0.11 has been released.

MySQL Administrator is a GUI management console for MySQL, with support
for tasks such as managing users, configuring MySQL, performing backups,
editing table definitions etc.

More information at:
  http://www.mysql.com/products/administrator/

You can download sources and binaries for Windows and Linux from:

  http://dev.mysql.com/downloads/administrator/

This release contains a few bug fixed relating to user administration and
the table editor.


-- 
Alfredo Kojima, GUI Developer
MySQL AB, www.mysql.com
Buenos Aires, Argentina

Are you MySQL certified?  www.mysql.com/certification

-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: Could this be dangerous :Values and Labels

2004-08-26 Thread mos
At 02:36 PM 8/25/2004, you wrote:
Or maybe just bad practice. Thought before I go any
further I'll ask.
I have a few static tables that list out items and
the primary key is an assigned ID.  Meaning I did
not set auto-increment.  As I add items I will add the
associated ID number.
Now to the transactional tables.  While the label has
the item listed in the form, it gets inserted into the
table with the ID number.  To illustrate:
Static_Table
ID  Value
1   United
2   Jet Blue
3   Southwest
4   American
Dynamic_Table
MemberIDAirline_Pref
200   1
201   4
202   3
203   4
204   1
Pros cons dangers advantages comments ?
Thank you
Stuart
Stuart
I personally would switch to a 2 letter code for the Airline Code, 
as in:

UN  United
JB  Jet Blue
SW  SouthWest
AM  American
simply because it will be much easier to train people and there will be 
fewer mistakes. It is much easier to remember AM for American instead of 
4. It would be a different thing if you had over a hundred airlines, then 
you could use numbers. But for a few dozen airlines, letter codes are 
easier to understand. Especially when you print simple reports, AM is a 
lot more readable than 4.

Mike 

--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]


Re: Could this be dangerous :Values and Labels

2004-08-26 Thread Stuart Felenstein
I actually did make the switch to mnemonics (as
suggested by Rhino) I've gone slightly beyond 2
letters though due to the fact that some of my labels
might be more then confusing. I've tried to stick with
3 letters on average.  It does seem like a better way
to go.

Stuart
--- mos [EMAIL PROTECTED] wrote:

 At 02:36 PM 8/25/2004, you wrote:
 Or maybe just bad practice. Thought before I go any
 further I'll ask.
 
 I have a few static tables that list out items
 and
 the primary key is an assigned ID.  Meaning I did
 not set auto-increment.  As I add items I will add
 the
 associated ID number.
 
 Now to the transactional tables.  While the label
 has
 the item listed in the form, it gets inserted into
 the
 table with the ID number.  To illustrate:
 
 Static_Table
 ID  Value
 1   United
 2   Jet Blue
 3   Southwest
 4   American
 
 Dynamic_Table
 MemberIDAirline_Pref
 200   1
 201   4
 202   3
 203   4
 204   1
 
 Pros cons dangers advantages comments ?
 
 Thank you
 Stuart
 
 Stuart
  I personally would switch to a 2 letter
 code for the Airline Code, 
 as in:
 
 UN  United
 JB  Jet Blue
 SW  SouthWest
 AM  American
 
 simply because it will be much easier to train
 people and there will be 
 fewer mistakes. It is much easier to remember AM
 for American instead of 
 4. It would be a different thing if you had over a
 hundred airlines, then 
 you could use numbers. But for a few dozen airlines,
 letter codes are 
 easier to understand. Especially when you print
 simple reports, AM is a 
 lot more readable than 4.
 
 Mike 
 
 
 -- 
 MySQL General Mailing List
 For list archives: http://lists.mysql.com/mysql
 To unsubscribe:   

http://lists.mysql.com/[EMAIL PROTECTED]
 
 


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



replication threads on different CPUs

2004-08-26 Thread Crouch, Luke H.
I'm a bit of a linux newbie and a newbie to replication, so I'll try to ask this 
question simply...
 
we're using mysql 4 to do replication, and I notice on the master I have this from 
using mytop:
 
  Id  User Host/IP DB  TimeCmd Query or State
  --   --- --  --- --
2670  root   localhost   rmps 0  Query show full processlist
2668  repl  rh-mysql-4  409 Binlog Has sent all binlog to 
slave; waiting for binlog to be updated
2666  repl  rh-mysql-2  411 Binlog Has sent all binlog to 
slave; waiting for binlog to be updated
2667  repl  rh-mysql-3  411 Binlog Has sent all binlog to 
slave; waiting for binlog to be updated

it looks like three seperate threads are running on the master here, one for each 
slave. in this particular machine, we have 2 HT processors, so 4 possible CPU threads. 
if it's not done automatically by Linux (RedHat 9) or MySQL, can I configure these 
threads to use their own CPU to maximize the performance? I assume MySQL or Linux will 
do this automatically.
 
we have the same machines in use for the slaves...so can I make the slave IO thread 
execute on one processor, and the slave SQL thread execute on another? does this 
happen automatically as well?
 
thanks,
-L

Luke Crouch 
918-461-5326 
[EMAIL PROTECTED] 

 


Re: ANNC: MySQL Administrator 1.0.11

2004-08-26 Thread William R. Mussatto
Alfredo Kengi Kojima said:

 MySQL Administrator 1.0.11 has been released.

 MySQL Administrator is a GUI management console for MySQL, with support
 for tasks such as managing users, configuring MySQL, performing backups,
 editing table definitions etc.

 More information at:
   http://www.mysql.com/products/administrator/

 You can download sources and binaries for Windows and Linux from:

   http://dev.mysql.com/downloads/administrator/

 This release contains a few bug fixed relating to user administration
 and the table editor.


 --
 Alfredo Kojima, GUI Developer
 MySQL AB, www.mysql.com
 Buenos Aires, Argentina

You should warn people that it doen't support 3.x series I believe.  Since
that is all that is in the Debian std. release this is an issue.



-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: Slow Queries on Fast Server?

2004-08-26 Thread Brent Baisley
Capable? I can't think if why it wouldn't be capable. From your posts I  
assume your definition of capable in this case is a quick response.  
Are you running 4.0 or 4.1? I think the indexing was changed in 4.1 so  
it would give you better response. 5-20 seconds does seem long,  
assuming your disks are fast.

You may try doubling or tripling your sort_buffer and  
myisam_sort_buffer settings and maybe you read_buffer. Remember the  
template configuration files are still all purpose configurations. You  
are really looking to optimize a specific area.

Unfortunately, I don't have a dataset large enough yet to test myself,  
but I am curious. Improved performance is on the to do list.

On Aug 26, 2004, at 9:07 AM, [EMAIL PROTECTED] wrote:
I'm gathering by the lack of response that perhaps MySQL is incapable  
of executing a count of the number of fulltext matches on 3 million  
rows.
I really thought that MySQL 4 was really suppose to be able to handle  
such a load
I still think my configuration may be to blame
?
- John



--
Could you send the output of an EXPLAIN for your query?

Sure, pretty sure the index is fine though:
mysql EXPLAIN SELECT COUNT(*) FROM product_fulltext WHERE MATCH  
(search_text) AGAINST
('black');
+--+--+---+-+- 
+--+--+-+
| table| type | possible_keys | key | key_len  
| ref  | rows |
Extra   |
+--+--+---+-+- 
+--+--+-+
| product_fulltext | fulltext | search_text   | search_text |   0  
|  |1 |
Using where |
+--+--+---+-+- 
+--+--+-+
1 row in set (0.00 sec)


[EMAIL PROTECTED] wrote:
Have you checked the Optimization section of the manual yet?
http://dev.mysql.com/doc/mysql/en/MySQL_Optimization.html

Oh yes, as I've attempted to configure the my.cnf file for best  
performance.  The
query is correct.  The fulltext index is correct as I built the  
fulltext index on
the
single column (took 9 minutes) and even did repair and optimize  
on the table...
so I
don't think its the index.  I'm thinking its the server config...

- John

[EMAIL PROTECTED] wrote:
I'm running into a problem with some queries running on a dedicated  
mysql server
(2.0
GHz, 2GB RAM).  Fulltext searching really exemplifies this as most  
MATCH, AGAINST
queries
are taking 5-20 seconds.  Performance was excellent for some reason  
one day (0.2
-
0.75
seconds) but it was only fast for a day or so.
Here's the rundown:
TABLE:  fulltext_table (some_id, the_text)
Rows: 3,237,981
Type: MyISAM
Size: 920.8 MB
QUERY: SELECT COUNT(*) FROM fulltext_table WHERE MATCH (the_text)  
AGAINST
('blue');
or
QUERY: SELECT SQL_CALC_FOUND_ROWS some_id FROM fulltext_table WHERE  
MATCH
(the_text)
AGAINST ('blue') LIMIT 0, 20;
Both are problematic.  I even tried placing a limit of 2 on the  
first query
but
it didn't improve anything.  The table has a fulltext index on the  
column and is
optimized.  No other users are connected to the server.

Is there a RED FLAG in here somewhere?
MySQL configuration settings (using my-huge.cnf template):
key_buffer = 500M
max_allowed_packet = 1M
table_cache = 512
sort_buffer_size = 10M
read_buffer_size = 2M
myisam_sort_buffer_size = 64M
#thread_cache = 8
thread_concurrency = 8
#- Modifications --- #
ft_min_word_len = 3
set-variable = table_cache=1024
set-variable = max_heap_table_size=64M
set-variable = tmp_table_size=128M
set-variable = query_cache_limit=2M
query_cache_type=1
Performance Test:
SELECT COUNT(*) FROM fulltext_table WHERE MATCH (the_text) AGAINST  
('white');
+--+
| COUNT(*) |
+--+
|95074 |
+--+
1 row in set (27.83 sec)

Statistics for vmstat 1 (my apologies if this doesn't look pretty):
---
procs  memory  swap  io system
  cpu
r  b   swpd   free   buff  cache   si   sobibo   incs us  
sy id wa
0  0  19500  17800  42432 177172800 060  11330   
0  0 99  1
0  1  19500  21524  42428 1765728  7240   960 0  536   444   
5  1 82 12
0  1  19500  19512  42424 176782000  2348 0  912   592   
0  1 50 49
0  1  19500  17788  42424 176954000  1980 0  868   588   
0  1 51 48
0  1  19500  17568  42424 176976000  2300 0  723   401   
0  0 50 49
0  1  19500  17704  42428 176962000  193620  662   364   
0  0 51 49
0  1  19500  17560  42428 176976400  2224 0  696   400   
0  0 51 49
0  1  19500  17504  42424 176982400  2136 0  670   380   
0  0 51 49
0  1  19500  17616  42424 176971200  2228 0  693   415   
0  0 51 49
0  1  19508  17608  42420 176972408  2348 8  692   389   
0  0 50 50
0  1  19508  17532  42428 176979200  1896   108  654   366   
0  0 50 49
0  1  

RE: replication threads on different CPUs

2004-08-26 Thread Donny Simonton
Luke,
As far as I know you can't do that in mysql, it would have to be at the
kernel level.  Replication threads, really don't use much cpu anyway at
least not on the master, since all it's doing is basically reading a binary
file.

Now the kernel itself does do something like you are talking about, but I
have no idea how it decides what is going to use what proc.

Now, my master box which is only running mysql and which is replicating to 2
different slaves, but also handles all selects and inserts for about 6
webservers looks like this.


Cpu0 : 10.1% us,  4.0% sy,  0.0% ni, 71.5% id, 12.6% wa,  0.5% hi,  1.2% si
Cpu1 :  2.2% us,  1.1% sy,  0.0% ni, 94.0% id,  2.5% wa,  0.0% hi,  0.1% si
Cpu2 : 10.3% us,  4.1% sy,  0.0% ni, 70.7% id, 12.9% wa,  0.8% hi,  1.3% si
Cpu3 :  2.9% us,  1.4% sy,  0.0% ni, 92.4% id,  3.2% wa,  0.0% hi,  0.2% si
Cpu4 :  8.9% us,  3.5% sy,  0.0% ni, 80.1% id,  5.8% wa,  0.6% hi,  1.2% si
Cpu5 :  2.3% us,  1.1% sy,  0.0% ni, 93.7% id,  2.7% wa,  0.0% hi,  0.1% si
Cpu6 :  8.8% us,  3.4% sy,  0.0% ni, 80.5% id,  5.6% wa,  0.6% hi,  1.2% si
Cpu7 :  2.5% us,  1.2% sy,  0.0% ni, 93.2% id,  3.0% wa,  0.0% hi,  0.2% si

So the load is being shared by all of the procs, just no idea what decides
where.

Donny

 -Original Message-
 From: Crouch, Luke H. [mailto:[EMAIL PROTECTED]
 Sent: Thursday, August 26, 2004 10:36 AM
 To: [EMAIL PROTECTED]
 Subject: replication threads on different CPUs
 
 I'm a bit of a linux newbie and a newbie to replication, so I'll try to
 ask this question simply...
 
 we're using mysql 4 to do replication, and I notice on the master I have
 this from using mytop:
 
   Id  User Host/IP DB  TimeCmd Query or
 State
   --   --- --  --- --
 2670  root   localhost   rmps 0  Query show full
 processlist
 2668  repl  rh-mysql-4  409 Binlog Has sent
 all binlog to slave; waiting for binlog to be updated
 2666  repl  rh-mysql-2  411 Binlog Has sent
 all binlog to slave; waiting for binlog to be updated
 2667  repl  rh-mysql-3  411 Binlog Has sent
 all binlog to slave; waiting for binlog to be updated
 
 it looks like three seperate threads are running on the master here, one
 for each slave. in this particular machine, we have 2 HT processors, so 4
 possible CPU threads. if it's not done automatically by Linux (RedHat 9)
 or MySQL, can I configure these threads to use their own CPU to maximize
 the performance? I assume MySQL or Linux will do this automatically.
 
 we have the same machines in use for the slaves...so can I make the slave
 IO thread execute on one processor, and the slave SQL thread execute on
 another? does this happen automatically as well?
 
 thanks,
 -L
 
 Luke Crouch
 918-461-5326
 [EMAIL PROTECTED]
 
 


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Correct date query syntax

2004-08-26 Thread Yong Wang
Hi, All:
I have a database which contains date attribute in string format
(like 2004-08-12). I want to genearte a report based on period time.
I use the syntax:
date1 ='2004-08-12'
date2='2004-08-18'
SELECT * FROM account WHERE (TO_DAYS(date) = TODAYS(date1)) and
(TO_DAYS(date) = TO_DAYS(date2));
The report script complains the condition after WHERE clause. The
reason I use TO_DAYS is that I want to convert 
string date data into integer for comparison. Can I use TO_DAYS() like
this way ?
 Thanks a lot.

Yong


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: Correct date query syntax

2004-08-26 Thread Jochem van Dieten
On Thu, 26 Aug 2004 11:31:46 -0500, Yong Wang [EMAIL PROTECTED] wrote:
 
 I have a database which contains date attribute in string format
 (like 2004-08-12). I want to genearte a report based on period time.
 I use the syntax:
 date1 ='2004-08-12'
 date2='2004-08-18'
 SELECT * FROM account WHERE (TO_DAYS(date) = TODAYS(date1)) and
 (TO_DAYS(date) = TO_DAYS(date2));

Is date the name of your field? Change it, it is a reserved word in SQL.


 The report script complains the condition after WHERE clause. The
 reason I use TO_DAYS is that I want to convert
 string date data into integer for comparison. Can I use TO_DAYS() like
 this way ?


Even if you can, don't: it isn't needed.
Just use a plain BETWEEN predicate without functions:
SELECT *
FROM account
WHERE date BETWEEN date1 AND date2

Jochem

-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: Correct date query syntax

2004-08-26 Thread SGreen
I believe you are not letting MySQL do enough work for you.  The date 
format is perfect, even as a string, to perform the comparison you are 
trying to perform.

SELECT @currTime := NOW();
+-+
| @currTime := NOW()  |
+-+
| 2004-08-26 12:48:16 |
+-+
1 row in set (0.00 sec)

SELECT @currTime as CurrentTime
, (@currTime = '2005-08-01')
, (@currTime  '2005-08-01')
, (@currTime  '2004-08-26 12:00:00')\G
*** 1. row ***
CurrentTime: 2004-08-26 12:48:16
(@currTime = '2005-08-01'): 1
 (@currTime  '2005-08-01'): 0
(@currTime  '2004-08-26 12:00:00'): 1
1 row in set (0.00 sec)

As you can see, MySQL is perfectly capable of comparing dates and 
datetimes if you just let it. There is no reason to convert them to any 
sort of intermediate value as it will do it for you internally and 
automatically. Please read this to see just how many different ways Dates 
can be specified:

http://dev.mysql.com/doc/mysql/en/DATETIME.html



You could try this as your query:

SET @date1 ='2004-08-12', date2='2004-08-18';

SELECT * 
FROM account 
WHERE (date = date1) 
AND (date = date2);


and it should work just fine.

Shawn Green
Database Administrator
Unimin Corporation - Spruce Pine
 

Yong Wang [EMAIL PROTECTED] wrote on 08/26/2004 12:31:46 PM:

 Hi, All:
 I have a database which contains date attribute in string format
 (like 2004-08-12). I want to genearte a report based on period time.
 I use the syntax:
 date1 ='2004-08-12'
 date2='2004-08-18'
 SELECT * FROM account WHERE (TO_DAYS(date) = TODAYS(date1)) and
 (TO_DAYS(date) = TO_DAYS(date2));
 The report script complains the condition after WHERE clause. The
 reason I use TO_DAYS is that I want to convert 
 string date data into integer for comparison. Can I use TO_DAYS() like
 this way ?
  Thanks a lot.
 
 Yong
 
 
 -- 
 MySQL General Mailing List
 For list archives: http://lists.mysql.com/mysql
 To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]
 


Mysql command line queries not working....

2004-08-26 Thread Mike Morton
I know the subject is not totally descriptive of the problem, but:

mysql -h  -u *** -p*** mikerocks  latest_distribution.sql

Is producing no results.  I mean none, totally, no errors, nothing.

The host, user and pass are all correct (of course removed here for security
;) ) and have the correct permissions.

The latest_distribution.sql is simply a mysqldump of a database... And I
have narrowed down the problem to the comments that the dump puts in there:
# phpMyAdmin SQL Dump
# version 2.5.6
# http://www.phpmyadmin.net

Etc...

Every comment in there aborts the rest of the file... Again, not with any
errors, it just simply stops.

Mysql on originating server: Ver 11.18 Distrib 3.23.54, for pc-linux (i686)
Mysql on destination server: Ver 12.20 Distrib 4.0.13, for pc-linux (i686)

Additional info:  The mysqldump was created on the originating server.
There is nothing strange in the mysqldump.  The latest_distribution.sql
works if imported as an sql query via PhpMyAdmin.

I need to do this command line (part of an automated setup), so the
questions are: 

1.  Is this a bug or some sort of setting that is messed up or something?
2.  Can the mysqldump file be created without comments, as removing them
every time there is a new dump will be tedious to say the least...
3.  Am I a total idiot and have missed something dead simple?

TIA!

--
Cheers

Mike Morton


*
* Tel: 905-465-1263
* Email: [EMAIL PROTECTED]
*


Indeed, it would not be an exaggeration to describe the history of the
computer industry for the past decade as a massive effort to keep up with
Apple.
- Byte Magazine

Given infinite time, 100 monkeys could type out the complete works of
Shakespeare. Win 98 source code? Eight monkeys, five minutes.
-- NullGrey 



-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



RE: Mysql command line queries not working....

2004-08-26 Thread Victor Pendleton
Can you run this from inside the monitor and see if any messages are sent to
the consol?
\. latest_distribution.sql


-Original Message-
From: Mike Morton
To: [EMAIL PROTECTED]
Sent: 8/26/04 12:05 PM
Subject: Mysql command line queries not working

I know the subject is not totally descriptive of the problem, but:

mysql -h  -u *** -p*** mikerocks  latest_distribution.sql

Is producing no results.  I mean none, totally, no errors, nothing.

The host, user and pass are all correct (of course removed here for
security
;) ) and have the correct permissions.

The latest_distribution.sql is simply a mysqldump of a database... And I
have narrowed down the problem to the comments that the dump puts in
there:
# phpMyAdmin SQL Dump
# version 2.5.6
# http://www.phpmyadmin.net

Etc...

Every comment in there aborts the rest of the file... Again, not with
any
errors, it just simply stops.

Mysql on originating server: Ver 11.18 Distrib 3.23.54, for pc-linux
(i686)
Mysql on destination server: Ver 12.20 Distrib 4.0.13, for pc-linux
(i686)

Additional info:  The mysqldump was created on the originating server.
There is nothing strange in the mysqldump.  The latest_distribution.sql
works if imported as an sql query via PhpMyAdmin.

I need to do this command line (part of an automated setup), so the
questions are: 

1.  Is this a bug or some sort of setting that is messed up or
something?
2.  Can the mysqldump file be created without comments, as removing them
every time there is a new dump will be tedious to say the least...
3.  Am I a total idiot and have missed something dead simple?

TIA!

--
Cheers

Mike Morton


*
* Tel: 905-465-1263
* Email: [EMAIL PROTECTED]
*


Indeed, it would not be an exaggeration to describe the history of the
computer industry for the past decade as a massive effort to keep up
with
Apple.
- Byte Magazine

Given infinite time, 100 monkeys could type out the complete works of
Shakespeare. Win 98 source code? Eight monkeys, five minutes.
-- NullGrey 



-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:
http://lists.mysql.com/[EMAIL PROTECTED]

-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



MySQL 4.0.18/Dual AMD64 thread zombie even when wait_timeout is set to 60 seconds! Bug?

2004-08-26 Thread Prana
Hi guys,
 We have a problem with Dual AMD64 Opteron/MySQL 4.0.18/Mandrake 10 for a
very high volume site. We are evaluating the performance on our new server
AMD64 and it seems it's slow compared to Dual Xeon/MySQL 4.0.15/RedHat8 and
Dual Xeon/MySQL 4.0.18/Mandrake 10.

 And it seems there are zombie threads. 570 threads in 1 hour and we didn't
even use JDBC connection pooling at all. These threads are supposed to be
gone within 60 seconds, since we set that option in mysqld. Note that we run
many SELECT queries (can be up to 150 queries/seconds), but the system does
not indicate any slow query: it's 0!

Our configuration is Apache 2.0.48 + Tomcat 5.0.27 + MySQL 4.0.18 with MySQL
connector/J 3.0.14 (latest stable). The Redhat 8 runs on Apache 2 + Tomcat
4.0 + MySQL 4.0.15. The old Redhat 8 on Xeon was fine. We have another
machine running Mandrake 10 on Xeon and they were fine under the same load.


 I have set the wait_timeout to 60 seconds, and it appears to be fine within
10 minutes, all the threads that are in sleep mode disappeared after 60
seconds. After a few minutes though, it's back like it was before.

 Is this Mandrake problem? MySQL problem? I read in here than Mandrake win
hands down on AMD64 compared to FreeBSD.

http://news.gw.com/freebsd.amd64/1030

What do you think cause this problem on MySQL/AMD64? Is there such problem
in v4.0.18?

Thanks,
Prana

Here's the info:
===
This MySQL server has been running for 0 days, 1 hours, 20 minutes and 48
seconds. It started up on Aug 26, 2004 at 11:24 PM.
===
Query statistics: Since its startup, 261,670 queries have been sent to the
server. 
 Total   ø per hour   ø per minute   ø per second  
 261,670   194,309.41   3,238.49   53.97 
===
Uptime: 5559  Threads: 569  Questions: 261705  Slow queries: 0  Opens: 74
Flush tables: 1  Open tables: 68  Queries per second avg: 47.078
===
Mandrake Packages:
MySQL-common-4.0.18-1.1.100mdk
lib64mysql12-4.0.18-1.1.100mdk
perl-Mysql-1.22_19-9mdk
MySQL-4.0.18-1.1.100mdk
MySQL-client-4.0.18-1.1.100mdk
php-mysql-4.3.4-1mdk

[EMAIL PROTECTED] root]# mysql -e 'show variables like %time%'
+--+---+
| Variable_name| Value |
+--+---+
| connect_timeout  | 5 |
| delayed_insert_timeout   | 300   |
| flush_time   | 0 |
| innodb_lock_wait_timeout | 50|
| interactive_timeout  | 60|
| long_query_time  | 10|
| net_read_timeout | 30|
| net_write_timeout| 60|
| slave_net_timeout| 3600  |
| slow_launch_time | 2 |
| timezone | SGT   |
| wait_timeout | 30|
+--+---+
[my.cnf]==
[client]
port= 3306
socket  = /var/lib/mysql/mysql.sock

[mysqld]
wait_timeout=30
interactive_timeout=60
port= 3306
socket  = /var/lib/mysql/mysql.sock
skip-locking
log-slow-queries
key_buffer = 384M
max_allowed_packet = 1M
table_cache = 512
sort_buffer_size = 2M
read_buffer_size = 2M
myisam_sort_buffer_size = 64M
thread_cache = 128
query_cache_size = 32M
max_connections=1200
thread_concurrency = 4
connect_timeout = 5

[mysqldump]
quick
max_allowed_packet = 16M

[mysql]
no-auto-rehash
# Remove the next comment character if you are not familiar with SQL
#safe-updates

[isamchk]
key_buffer = 256M
sort_buffer_size = 256M
read_buffer = 2M
write_buffer = 2M

[myisamchk]
key_buffer = 256M
sort_buffer_size = 256M
read_buffer = 2M
write_buffer = 2M

[mysqlhotcopy]
interactive-timeout
==
Prana





--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: Mysql command line queries not working....

2004-08-26 Thread Mike Morton
OK, more debugging, and this is what I have come up with

The latest_distribution.sql file was NOT created via a mysqldump, but rather
via phpmyadmin export...

The comments from phpmyadmin are denoted with the '#' character

The comments from a true mysqldump are denoted with the '--' characters...

When doing the command line import with the mysqldump file, it all works
good...

So, I guess this is a warning to anyone who uses phpmyadmin (2.5.6 anyhow)
that if you do an export, it is NOT a valid mysql import... At least not on
my servers ;)

Thanks to everyone who answered so quick!  (and PS - if anyone can confirm
or correct these assumptions, please do let me know.  Thanks!)

On 8/26/04 1:08 PM, Victor Pendleton [EMAIL PROTECTED] wrote:

 Can you run this from inside the monitor and see if any messages are sent to
 the consol?
 \. latest_distribution.sql
 
 
 -Original Message-
 From: Mike Morton
 To: [EMAIL PROTECTED]
 Sent: 8/26/04 12:05 PM
 Subject: Mysql command line queries not working
 
 I know the subject is not totally descriptive of the problem, but:
 
 mysql -h  -u *** -p*** mikerocks  latest_distribution.sql
 
 Is producing no results.  I mean none, totally, no errors, nothing.
 
 The host, user and pass are all correct (of course removed here for
 security
 ;) ) and have the correct permissions.
 
 The latest_distribution.sql is simply a mysqldump of a database... And I
 have narrowed down the problem to the comments that the dump puts in
 there:
 # phpMyAdmin SQL Dump
 # version 2.5.6
 # http://www.phpmyadmin.net
 
 Etc...
 
 Every comment in there aborts the rest of the file... Again, not with
 any
 errors, it just simply stops.
 
 Mysql on originating server: Ver 11.18 Distrib 3.23.54, for pc-linux
 (i686)
 Mysql on destination server: Ver 12.20 Distrib 4.0.13, for pc-linux
 (i686)
 
 Additional info:  The mysqldump was created on the originating server.
 There is nothing strange in the mysqldump.  The latest_distribution.sql
 works if imported as an sql query via PhpMyAdmin.
 
 I need to do this command line (part of an automated setup), so the
 questions are: 
 
 1.  Is this a bug or some sort of setting that is messed up or
 something?
 2.  Can the mysqldump file be created without comments, as removing them
 every time there is a new dump will be tedious to say the least...
 3.  Am I a total idiot and have missed something dead simple?
 
 TIA!
 
 --
 Cheers
 
 Mike Morton
 
 
 *
 * Tel: 905-465-1263
 * Email: [EMAIL PROTECTED]
 *
 
 
 Indeed, it would not be an exaggeration to describe the history of the
 computer industry for the past decade as a massive effort to keep up
 with
 Apple.
 - Byte Magazine
 
 Given infinite time, 100 monkeys could type out the complete works of
 Shakespeare. Win 98 source code? Eight monkeys, five minutes.
 -- NullGrey 
 
 

--
Cheers

Mike Morton


*
* Tel: 905-465-1263
* Email: [EMAIL PROTECTED]
*


Indeed, it would not be an exaggeration to describe the history of the
computer industry for the past decade as a massive effort to keep up with
Apple.
- Byte Magazine

Given infinite time, 100 monkeys could type out the complete works of
Shakespeare. Win 98 source code? Eight monkeys, five minutes.
-- NullGrey 



-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Template

2004-08-26 Thread Scott Hamm
I finally got Php/MySQL/Apache all set on Windows 2000 professional
workstation. I'm looking for various php templates that keeps track of
associates, quantity produced, hours for each quantity produced and so on.
Is there such a template out there on the web that I can use?

TIA,

Scott

-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: Template

2004-08-26 Thread Rhino

- Original Message - 
From: Scott Hamm [EMAIL PROTECTED]
To: 'Mysql ' (E-mail) [EMAIL PROTECTED]
Sent: Thursday, August 26, 2004 2:37 PM
Subject: Template


 I finally got Php/MySQL/Apache all set on Windows 2000 professional
 workstation. I'm looking for various php templates that keeps track of
 associates, quantity produced, hours for each quantity produced and so on.
 Is there such a template out there on the web that I can use?

I don't know php so maybe 'templates' is a term specific to that language.
If that is the case, ignore this note.

If it isn't, just what do you mean? Are you looking for table definitions or
programs or something else altogether?

Rhino


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



MySQL C API Examples

2004-08-26 Thread Aftab Jahan Subedar
I have arranged some MySQL C API examples at
http://www.geocities.com/jahan.geo/mysql_c_by_example.html
Comments/ Suggestion  welcome.
--
Aftab Jahan Subedar
CEO/Software Engineer
Subedar Technologies
Subedar Baag
Bibir Bagicha #1
North Jatrabari
Dhaka 1204
Bangladesh
http://www.SubedarTechnologies.com ( down now )
http://www.DhakaStockExchangeGame.com/ ( down now )
http://www.CEOBangladesh.com/( down now )
http://www.NYSEGame.com( down now )
tel://+88027519050
EMail://[EMAIL PROTECTED] - Directly to my notebook

--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]


SELECT from two tables with condition

2004-08-26 Thread melter
Hi!

I have got two tables: 'item' and 'propertie'.

Table 'item' has index column named 'id_propertie' which refers to one row
in table 'propertie'. Table 'propertie' has string column 'value'.

I want to get the value of colun 'value' from table 'propertie' which index
is same than in table 'item', BUT if the column 'id_propertie' in tabel
'item' is null the value for 'value' is 'empty'.

Is it possible to make query like this?



___
Parhaat hakupalvelut yhdessä osoitteessa: http://www.eniro.fi/

Suomalaisten yritysten tuotteet ja palvelut: http://yritykset.eniro.fi/




--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Sanity Check : Error in sql

2004-08-26 Thread Stuart Felenstein
I'm running into a problem here where mySQL is saying
unknown column.
Education_table
TypeID Type
HS High School
CO College
MA Masters

SQL: 
Select * from Education_table (and no the table is not
named table)

From: TypeID = Value , Type = Label
Choose High School
Error Msg:
Unknown column 'HS' in 'field list'

I tried adding where typeid = type but that makes not
sense.
I'm now wondering and running (after I post) if type
is a no-no-word.

I know I post way to often.

Stuart

-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: Template

2004-08-26 Thread SGreen
How many places have you looked? I would use a search engine (Google, 
Yahoo, etc) and try various combinations of terms like PHP, Samples, 
Production, Source code, sample, and so on.  I would keep searching 
until I felt confident that:

a) nobody else has posted any code for a series of web pages that did what 
I want to do.
b) I found a sample close enough to what I want to do that I could tweak 
it to fit my needs
c) I found enough information about PHP development to enable me to build 
it from scratch.

If you have a  MySQL related question please, PLEASE,  come back. There 
are lots of very knowledgeable people on this list that will be happy to 
help you with your database issues but most of us just don't have the 
resources to take up the slack for the PHP lists. Sorry.

Best Wishes,
Shawn Green
Database Administrator
Unimin Corporation - Spruce Pine

Scott Hamm [EMAIL PROTECTED] wrote on 08/26/2004 02:37:59 PM:

 I finally got Php/MySQL/Apache all set on Windows 2000 professional
 workstation. I'm looking for various php templates that keeps track of
 associates, quantity produced, hours for each quantity produced and so 
on.
 Is there such a template out there on the web that I can use?
 
 TIA,
 
 Scott
 
 -- 
 MySQL General Mailing List
 For list archives: http://lists.mysql.com/mysql
 To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]
 


RE: Sanity Check : Error in sql

2004-08-26 Thread Mike Johnson
From: Stuart Felenstein [mailto:[EMAIL PROTECTED] 

 I'm running into a problem here where mySQL is saying
 unknown column.
 Education_table
 TypeID Type
 HS High School
 CO College
 MA Masters
 
 SQL: 
 Select * from Education_table (and no the table is not
 named table)
 
 From: TypeID = Value , Type = Label
 Choose High School
 Error Msg:
 Unknown column 'HS' in 'field list'
 
 I tried adding where typeid = type but that makes not
 sense.
 I'm now wondering and running (after I post) if type
 is a no-no-word.

Try wrapping Value in single- or double-quotes in your code. It sounds
like it's essentially generating this query:

Select * from Education_table where TypeID = HS;

instead of...

Select * from Education_table where TypeID = 'HS';

HTH!


-- 
Mike Johnson
Smarter Living, Inc.

--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: Sanity Check : Error in sql

2004-08-26 Thread Keith Ivey
Stuart Felenstein wrote:
SQL: 
Select * from Education_table (and no the table is not
named table)

From: TypeID = Value , Type = Label
Choose High School
Error Msg:
Unknown column 'HS' in 'field list'
 

You need to show the exact SQL statement that you're sending.  Obviously 
SELECT * FROM
Education_table isn't the whole thing, and it's unclear what all that 
From: and Choose
garbage afterward is.  Judging by the error message, your SQL statement 
is trying to select a
column called HS that doesn't exist in the table, but you're not showing 
us the SQL
statement that gives the error.

--
Keith Ivey [EMAIL PROTECTED]
Washington, DC
--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]


Re: Sanity Check : Error in sql

2004-08-26 Thread Stuart Felenstein
Okay ..got to be looking for id's with string, not
numerics.  
Case closed.  
Oi
Stuart
--- Stuart Felenstein [EMAIL PROTECTED] wrote:

 I'm running into a problem here where mySQL is
 saying
 unknown column.
 Education_table
 TypeID Type
 HS High School
 CO College
 MA Masters
 
 SQL: 
 Select * from Education_table (and no the table is
 not
 named table)
 
 From: TypeID = Value , Type = Label
 Choose High School
 Error Msg:
 Unknown column 'HS' in 'field list'
 
 I tried adding where typeid = type but that makes
 not
 sense.
 I'm now wondering and running (after I post) if type
 is a no-no-word.
 
 I know I post way to often.
 
 Stuart
 
 -- 
 MySQL General Mailing List
 For list archives: http://lists.mysql.com/mysql
 To unsubscribe:   

http://lists.mysql.com/[EMAIL PROTECTED]
 
 


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



huge innodb data files

2004-08-26 Thread Mayuran Yogarajah
Our DB in production currently has 2 innodb data files,
the second one (which is marked autoextend) has now
grown past 26 gigs.  We are experiencing weird speed
problems with one of the tables.  Even though there are
no rows in this table, performing any kind of select takes
about 2 minutes to execute.  Has anyone had a similar
problem before ? What can I do to speed up queries to
this table ?
thanks,
M
--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]


Update Questions

2004-08-26 Thread Keith Brownmiller
Greetings All.

I am currently running 3.23.14alpha and have just downloaded the 4.0.20 binary 
version.  I am running under the Slackware Distribution of Linux.  I have a variety of 
PHP related things running currently.

Without destroying the current databases and the current tables under the mysql 
database what would be the simplest method to put the update in place.  Hopefully 
without breaking anything.

Thanks in advance

Keith


4.1.3 and prepared statements

2004-08-26 Thread Rick Robinson
Title: 4.1.3 and prepared statements






Hi all-

Is the MySQL C API for prepared statements working at all in 4.1.3? I'm trying to do a relatively simple select test, and I consistently get an error on execute = MySQL client run out of memory. But it's a singleton select of one column and the first time I execute?

If this doesn't work, I'm very afraid...


I've attached my simple code.


Here's the table:


create table cfg_2

(config_key varchar(30) not null,

section_key varchar(30) not null,

property_key varchar(255) not null,

property_value varchar(255),

primary key(config_key, section_key, property_key)

) engine=myisam;


insert into cfg_2 values('svp001','stats','number.of.threads','2');


Some other notes:
Solaris 9 Sparc, gcc 3.3.2, using 32 bit, max binary version of mysql for Solaris 9, linked with reentrant client lib (libmyclient_r), using a my-medium.cnf config.


Should I just bag the whole prepared statement thing until it gets stable? And when would that be?


Thx,

Rick

 ... 



-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]

DBI and Mysql error 2006

2004-08-26 Thread Yannick Warnier
Hi there,

I'm having a problem with MySQL within a Perl::DBI usage. I've turned it
upside-down and cannot find what it's related to.

My Perl script creates multiple databases and populates them with
tables. The problem appears when creating the second database (in the
foreach statement):

#
# Get a database connection to use to create new databases
#
my $tempDSN = 'DBI:mysql:database=test:host=localhost';
our $tempDBH =DBI-connect($tempDSN,$login,$password)
|| die Could not connect to test database: $! ;

#
# Go through a list of databases and create them one by one
#
foreach my $db ( keys(%$list_of_DBs) ) {

#
# Create a DB with the handler we have
#
my $create = $tempDBH-func('createdb',$db,'admin')
||die Could not create database $db : $!;

#
# Connect to the newly created database
#
my $dbDSN = DBI:mysql:database=$db:host=localhost;
my $dbDBH = DBI-connect($dbDSN,$login,$password)
|| die Could not connect to database $db : $!;

#
# Create a set of tables in this database
#
foreach my $table ( keys(%$list_of_tables) ) {
$dbDBH-do(CREATE TABLE ... );
}

#
# Disconnect from the newly created database
#
$dbDBH-disconnect() || die ...;
}
#
# Disconnect from the temporary database connection
#
$tempDBH-disconnect();


So the first database is created with all it's table, but when I get to
the second, I get this error:
Could not create database ...
And when asking more detail with $DBI::errstr:
ERROR: 2006 'MySQL server has gone away'

I've really searched this down in my doc, on the net, and with
DBI-trace(5) but the only thing I figured out is that somehow the
temporary database connection is shut down by something without asking.

But I'm not sure... How could I?

Anyway, if somebody has any idea what this might come from or has come
to something similar in the past, please give me a hint.

Thanks,
Yannick


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



RE: 4.1.3 and prepared statements

2004-08-26 Thread Rick Robinson
Looks like my attachment did not make it to the post.  So here's the code in
question - any thoughts?:
 
code
#include iostream
#include cstdlib
#include cstring
#include cstdio
#include mysql.h
using namespace std;
int
main(int argc, char *argv[])
{
cout  start up  endl;
MYSQL * connection;
connection = mysql_init(0);
connection = mysql_real_connect(connection, 0, sfwd, sfwd, sfwd,
0, 0,0);
if (0 == connection)
{
cerr  connect failed:  mysql_error(connection)  endl;
return -1;
}
static const char * sql_statement =
select property_value from cfg_2 
where config_key=? and section_key=? and property_key=?;
MYSQL_STMT * stmt_handle = mysql_stmt_init(connection);
if (0 == stmt_handle)
{
cerr  stmt init failed:  mysql_error(connection)  endl;
return -1;
}
int mysql_return_code = mysql_stmt_prepare(stmt_handle,
   sql_statement,
   strlen(sql_statement)
   );
if (0 != mysql_return_code)
{
cerr  stmt prepare failed:  mysql_stmt_error(stmt_handle) 
endl;
mysql_stmt_close(stmt_handle);
return -1;
}
 
MYSQL_BIND bind_var[3];
unsigned long var_length[3];
my_bool not_null = 0;
char config_key[31] = {'\0'};
char section_key[31] = {'\0'};
char property_key[256] = {'\0'};
 
bind_var[0].buffer_type = MYSQL_TYPE_VAR_STRING;
bind_var[0].buffer = (char *)config_key;
bind_var[0].buffer_length = sizeof(config_key);
bind_var[0].length = var_length[0];
bind_var[0].is_null = not_null;
 
bind_var[1].buffer_type = MYSQL_TYPE_VAR_STRING;
bind_var[1].buffer = (char *)section_key;
bind_var[1].buffer_length = sizeof(section_key);
bind_var[1].length = var_length[1];
bind_var[1].is_null = not_null;
 
bind_var[2].buffer_type = MYSQL_TYPE_VAR_STRING;
bind_var[2].buffer = (char *)property_key;
bind_var[2].buffer_length = sizeof(property_key);
bind_var[2].length = var_length[2];
bind_var[2].is_null = not_null;
 
strncpy(config_key, svp001, sizeof(section_key)-1);
strncpy(section_key, stats, sizeof(section_key)-1);
strncpy(property_key, number.of.threads, sizeof(property_key)-1);
 
mysql_return_code = mysql_stmt_bind_param(stmt_handle, bind_var);
if (0 != mysql_return_code)
{
cerr  stmt bind failed:  mysql_stmt_error(stmt_handle) 
endl;
mysql_stmt_close(stmt_handle);
return -1;
}
 
mysql_return_code = mysql_stmt_execute(stmt_handle);
if (0 != mysql_return_code)
{
cerr  stmt execute failed:  mysql_stmt_error(stmt_handle) 
endl;
mysql_stmt_close(stmt_handle);
return -1;
}
 
char property_value[256] = {'\0'};
MYSQL_BIND result_var[1];
unsigned long result_var_length[1];
my_bool is_null[1];
 
result_var[0].buffer_type = MYSQL_TYPE_VAR_STRING;
result_var[0].buffer = (char *)property_value;
result_var[0].buffer_length = sizeof(property_value)-1;
result_var[0].is_null = is_null[0];
result_var[0].length = result_var_length[0];
 
mysql_return_code = mysql_stmt_bind_result(stmt_handle, result_var);
if (0 != mysql_return_code)
{
cerr  stmt bind rslt failed:  mysql_stmt_error(stmt_handle) 
endl;
mysql_stmt_close(stmt_handle);
return -1;
}
 
mysql_return_code = mysql_stmt_store_result(stmt_handle);
if (0 != mysql_return_code)
{
cerr  stmt store rslt failed:  mysql_stmt_error(stmt_handle)
 endl;
mysql_stmt_close(stmt_handle);
return -1;
}
 
mysql_return_code = mysql_stmt_fetch(stmt_handle);
if (0 != mysql_return_code  MYSQL_NO_DATA != mysql_return_code)
{
cerr  stmt fetch failed:  mysql_stmt_error(stmt_handle) 
endl;
mysql_stmt_free_result(stmt_handle);
mysql_stmt_close(stmt_handle);
return -1;
}
 
if (MYSQL_NO_DATA != mysql_return_code)
{
cout  stmt - got:   property_value  endl;
}
mysql_stmt_free_result(stmt_handle);
mysql_stmt_close(stmt_handle);
cout  done  endl;
return 0;
}
/code
 

  _  

From: Rick Robinson [mailto:[EMAIL PROTECTED] 
Sent: Thursday, August 26, 2004 6:24 PM
To: Mysql
Subject: 4.1.3 and prepared statements



Hi all- 
Is the MySQL C API for prepared statements working at all in 4.1.3?  I'm
trying to do a relatively simple select test, and I consistently get an
error on execute = MySQL client run out of memory.  But it's a singleton
select of one column and the first time I execute?

If this doesn't work, I'm very afraid... 

I've attached my simple code. 

Here's the table: 

create table cfg_2 
(config_key varchar(30) not null, 
section_key varchar(30) not null, 
property_key varchar(255) not null, 
property_value varchar(255), 
primary key(config_key, section_key, property_key) 
) engine=myisam; 

Re: Brainstorming' time! (export to excel via java)

2004-08-26 Thread Shawn

As for programming skills, I'm pretty familiar with Java so I feel sure I
could write a suitable utility with that. In fact, unless I had a really
urgent need, I would prefer to write my own stuff just because I like
writing code
If you wanted to go the java route I suggest checking out
http://jdbforms.sourceforge.net/wiki.php
which automatically generates jsp forms by reading your table definition.  You can 
then add a simple button to export to excel such as:
db:gotoButton  caption=export_to_excel  singleRow=false
destTable=BOOK
destination=/excelReport/books?filename=BOOK.xlssheetname=BOOKLIST 
/
(example from dbforms/examples/bookstore/howto/howtoPrintaExcelReport.jsp)
so then regular users can use a web based form to insert/update/filter/sort the 
information and then export what they needed to xls.
This above example uses the Jakarta POI - Java API To Access Microsoft Format Files 
--http://jakarta.apache.org/poi/
Otherwise you could also use DbForms to pass the data to a JasperReport which allows 
excel output as well
http://jasperreports.sourceforge.net/
see dbforms/examples/bookstore/howto/howtoPrintaExcelReport.jsp
also see the JasperReports Chapter of the UsersGuide for dbforms if interested on how 
to configure it.
dbforms also lets you do neat things like
Select type, sum(value) as sumValue where date  ?
group by type having sumValue  ?
where because the date should be selected by the user, you can not use a fixed view in 
the database (see the dbform's usersguide chapter on Query Support)
Have a good one,
--
Shawn
Karma is immutable, so act accordingly!
--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]


RE: Slow Queries on Fast Server?

2004-08-26 Thread Donny Simonton
John,
From my experience it is a lot more on how big is your data, not necessarily
the amount of data.  Which version of mysql are you running?  Are you using
a mysql prepared version (you downloaded it from mysql.com).  I'm using
4.1.3 and I have a table that has a char 68 with 29 million rows that is
fulltext indexed and all of my queries using something similar to yours take
0.1 to 0.2 seconds max.  Also if you provided your full table structure
including the indexes that would help.  

Donny

 -Original Message-
 From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
 Sent: Thursday, August 26, 2004 8:08 AM
 To: [EMAIL PROTECTED]
 Subject: Re: Slow Queries on Fast Server?
 
 I'm gathering by the lack of response that perhaps MySQL is incapable of
 executing a count of the number of fulltext matches on 3 million rows.
 I really thought that MySQL 4 was really suppose to be able to handle such
 a load
 I still think my configuration may be to blame
 ?
 - John
 
 
 
 
 
 
 --
 Could you send the output of an EXPLAIN for your query?
 
 Sure, pretty sure the index is fine though:
 
 mysql EXPLAIN SELECT COUNT(*) FROM product_fulltext WHERE MATCH
 (search_text) AGAINST
  ('black');
 +--+--+---+-+-+---
 ---+--+-+
 | table| type | possible_keys | key | key_len |
 ref  | rows |
 Extra   |
 +--+--+---+-+-+---
 ---+--+-+
 | product_fulltext | fulltext | search_text   | search_text |   0 |
 |1 |
 Using where |
 +--+--+---+-+-+---
 ---+--+-+
 1 row in set (0.00 sec)
 
 
 
 
 [EMAIL PROTECTED] wrote:
 Have you checked the Optimization section of the manual yet?
 http://dev.mysql.com/doc/mysql/en/MySQL_Optimization.html
 
 
  Oh yes, as I've attempted to configure the my.cnf file for best
 performance.  The
  query is correct.  The fulltext index is correct as I built the fulltext
 index on
  the
  single column (took 9 minutes) and even did repair and optimize on
 the table...
  so I
  don't think its the index.  I'm thinking its the server config...
 
  - John
 
 
 
  [EMAIL PROTECTED] wrote:
 
 I'm running into a problem with some queries running on a dedicated
 mysql server
  (2.0
 GHz, 2GB RAM).  Fulltext searching really exemplifies this as most
 MATCH, AGAINST
  queries
 are taking 5-20 seconds.  Performance was excellent for some reason one
 day (0.2
  -
  0.75
 seconds) but it was only fast for a day or so.
 Here's the rundown:
 
 TABLE:  fulltext_table (some_id, the_text)
 Rows: 3,237,981
 Type: MyISAM
 Size: 920.8 MB
 
 QUERY: SELECT COUNT(*) FROM fulltext_table WHERE MATCH (the_text)
 AGAINST
  ('blue');
 or
 QUERY: SELECT SQL_CALC_FOUND_ROWS some_id FROM fulltext_table WHERE
 MATCH
  (the_text)
 AGAINST ('blue') LIMIT 0, 20;
 
 Both are problematic.  I even tried placing a limit of 2 on the
 first query
  but
 it didn't improve anything.  The table has a fulltext index on the
 column and is
 optimized.  No other users are connected to the server.
 
 Is there a RED FLAG in here somewhere?
 
 MySQL configuration settings (using my-huge.cnf template):
 key_buffer = 500M
 max_allowed_packet = 1M
 table_cache = 512
 sort_buffer_size = 10M
 read_buffer_size = 2M
 myisam_sort_buffer_size = 64M
 #thread_cache = 8
 thread_concurrency = 8
 #- Modifications --- #
 ft_min_word_len = 3
 set-variable = table_cache=1024
 set-variable = max_heap_table_size=64M
 set-variable = tmp_table_size=128M
 set-variable = query_cache_limit=2M
 query_cache_type=1
 
 
 Performance Test:
 SELECT COUNT(*) FROM fulltext_table WHERE MATCH (the_text) AGAINST
 ('white');
 +--+
 | COUNT(*) |
 +--+
 |95074 |
 +--+
 1 row in set (27.83 sec)
 
 Statistics for vmstat 1 (my apologies if this doesn't look pretty):
 ---
 procs  memory  swap  io system
 cpu
  r  b   swpd   free   buff  cache   si   sobibo   incs us sy
 id wa
 0  0  19500  17800  42432 177172800 060  11330  0  0
 99  1
  0  1  19500  21524  42428 1765728  7240   960 0  536   444  5
 1 82 12
  0  1  19500  19512  42424 176782000  2348 0  912   592  0
 1 50 49
  0  1  19500  17788  42424 176954000  1980 0  868   588  0
 1 51 48
  0  1  19500  17568  42424 176976000  2300 0  723   401  0
 0 50 49
  0  1  19500  17704  42428 176962000  193620  662   364  0
 0 51 49
  0  1  19500  17560  42428 176976400  2224 0  696   400  0
 0 51 49
  0  1  19500  17504  42424 176982400  2136 0  670   380  0
 0 51 49
  0  1  19500  17616  42424 176971200  2228 0  693   415  0
 0 51 49
  0  1  19508  17608  42420 176972408  2348 8  692   389  0
 0 50 50
  0  1  19508  17532  42428 17697920 

table conversion problems

2004-08-26 Thread Sergei Skarupo
Hi all,
 
Started a conversion from MyISAM to InnoDB; it's been almost two days and the 
statement is still executing... 
 
The (MyISAM) data table size is almost 4G. There were two reasons for this conversion: 
to start supporting transactions and to avoid the 4G limit of MyISAM tables; this 
table has been created without explicitly specifying MAX_ROWS and AVG_ROW_LENGTH. 
 
The avg row length is 28 bytes, there's only a primary key comprised of 3 integers.
 
The state of this thread that's performing the conversion is  Copy to tmp table. 
 
We need to start updating the table as soon as possible...
 
Is there a way to monitor the progress?
Is the tmp table allocated in InnoDB tablespace?
What are the consequences of killing the thread? Will it waste whatever InnoDB 
tablespace has been already used for this conversion?
I'm using Mysqlcc. How long may it take to cancel this statement by pushing Cancel 
execution and clear 
results button? Sometimes it takes a while... What does this button actually do?
 
Thanks in advance for your help!
 
-- Sergei


RE: table conversion problems

2004-08-26 Thread Donny Simonton
Sergei,
I don't know much about innodb, but myisam doesn't have a 4 gig limit unless
you are using a dynamic type of table.  If you are using a fixed table which
is by using int, char, etc...  Not text, varchar, blobs.  

As long as you don't use the last ones, you don't have a 4 gig limit.

As far as your questions about innodb, can't help you there.  Except for in
my case when I have switched tables to innodb, I copy them in chunks to
speed up the process.  That's what it says on the innodb website, so that's
what we did.

Donny

 -Original Message-
 From: Sergei Skarupo [mailto:[EMAIL PROTECTED]
 Sent: Thursday, August 26, 2004 8:36 PM
 To: Mysql List (E-mail)
 Subject: table conversion problems
 
 Hi all,
 
 Started a conversion from MyISAM to InnoDB; it's been almost two days and
 the statement is still executing...
 
 The (MyISAM) data table size is almost 4G. There were two reasons for this
 conversion: to start supporting transactions and to avoid the 4G limit of
 MyISAM tables; this table has been created without explicitly specifying
 MAX_ROWS and AVG_ROW_LENGTH.
 
 The avg row length is 28 bytes, there's only a primary key comprised of 3
 integers.
 
 The state of this thread that's performing the conversion is  Copy to tmp
 table.
 
 We need to start updating the table as soon as possible...
 
 Is there a way to monitor the progress?
 Is the tmp table allocated in InnoDB tablespace?
 What are the consequences of killing the thread? Will it waste whatever
 InnoDB tablespace has been already used for this conversion?
 I'm using Mysqlcc. How long may it take to cancel this statement by
 pushing Cancel execution and clear
 results button? Sometimes it takes a while... What does this button
 actually do?
 
 Thanks in advance for your help!
 
 -- Sergei



-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



another newb question for you help...

2004-08-26 Thread B Wiley Snyder
Hi again, I'm inserting some test products into my new mysql database but 
it only lets me enter so much? I thought BLOB would allow alot more 
characters? Anyway, this was how I constructed the database.

CREATE TABLE jspCart_products (
ProductID int primary key,
CategoryID int,
ModelNumber varChar(75),
ModelName varChar(250),
ProductImage varchar(250),
UnitCost decimal(9,2),
Description BLOB,
);
This is what I am trying to enter...
INSERT into jspCart_products VALUES(188, 4, f23, 
modelxyz,../images/product1.jpg, 20.95,Hi my name is frank and I'd 
like to say like WOW man.This is a lengthy description of this product. It 
is A numero Uno on my list like wow I love this product so much it is 
unbelievable!);

But it only lets me type in the command window this much
INSERT into jspCart_products VALUES(188, 4, f23, 
modelxyz,../images/product1.jpg, 20.95,Hi my name is frank and I'd 
like to say like WOW man.This is a lengthy description of this product.

Can someone help me out here?
Thanks in advance,
-Wiley
--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]


RE: table conversion problems

2004-08-26 Thread Sergei Skarupo

Hi Donny,

Thanks for your reply. This table only uses ints and floats, but the floats are 
allowed to be null, which means, as far as I understand, that it's not a fixed row 
length... 

By the way, Paul DuBois writes about the 4G limit in MySQL, second edition, and does 
not mention that fixed rows make a difference as far as the size limit is concerned.

Could you please point me to a page about copying data in chunks on InnoDB website?

In any case, it's kind of too late now -- my alter command is already running :)

-- Sergei





-Original Message-
From: Donny Simonton [mailto:[EMAIL PROTECTED]
Sent: Thursday, August 26, 2004 6:37 PM
To: Sergei Skarupo; 'Mysql List (E-mail)'
Subject: RE: table conversion problems


Sergei,
I don't know much about innodb, but myisam doesn't have a 4 gig limit unless
you are using a dynamic type of table.  If you are using a fixed table which
is by using int, char, etc...  Not text, varchar, blobs.  

As long as you don't use the last ones, you don't have a 4 gig limit.

As far as your questions about innodb, can't help you there.  Except for in
my case when I have switched tables to innodb, I copy them in chunks to
speed up the process.  That's what it says on the innodb website, so that's
what we did.

Donny

 -Original Message-
 From: Sergei Skarupo [mailto:[EMAIL PROTECTED]
 Sent: Thursday, August 26, 2004 8:36 PM
 To: Mysql List (E-mail)
 Subject: table conversion problems
 
 Hi all,
 
 Started a conversion from MyISAM to InnoDB; it's been almost two days and
 the statement is still executing...
 
 The (MyISAM) data table size is almost 4G. There were two reasons for this
 conversion: to start supporting transactions and to avoid the 4G limit of
 MyISAM tables; this table has been created without explicitly specifying
 MAX_ROWS and AVG_ROW_LENGTH.
 
 The avg row length is 28 bytes, there's only a primary key comprised of 3
 integers.
 
 The state of this thread that's performing the conversion is  Copy to tmp
 table.
 
 We need to start updating the table as soon as possible...
 
 Is there a way to monitor the progress?
 Is the tmp table allocated in InnoDB tablespace?
 What are the consequences of killing the thread? Will it waste whatever
 InnoDB tablespace has been already used for this conversion?
 I'm using Mysqlcc. How long may it take to cancel this statement by
 pushing Cancel execution and clear
 results button? Sometimes it takes a while... What does this button
 actually do?
 
 Thanks in advance for your help!
 
 -- Sergei



--
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]



Re: another newb question for you help...

2004-08-26 Thread Rhino

- Original Message - 
From: B Wiley Snyder [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Sent: Thursday, August 26, 2004 10:31 PM
Subject: another newb question for you help...


 Hi again, I'm inserting some test products into my new mysql database but
 it only lets me enter so much? I thought BLOB would allow alot more
 characters? Anyway, this was how I constructed the database.

 CREATE TABLE jspCart_products (
 ProductID int primary key,
 CategoryID int,
 ModelNumber varChar(75),
 ModelName varChar(250),
 ProductImage varchar(250),
 UnitCost decimal(9,2),
 Description BLOB,
 );

 This is what I am trying to enter...
 INSERT into jspCart_products VALUES(188, 4, f23,
 modelxyz,../images/product1.jpg, 20.95,Hi my name is frank and I'd
 like to say like WOW man.This is a lengthy description of this product. It
 is A numero Uno on my list like wow I love this product so much it is
 unbelievable!);

 But it only lets me type in the command window this much
 INSERT into jspCart_products VALUES(188, 4, f23,
 modelxyz,../images/product1.jpg, 20.95,Hi my name is frank and I'd
 like to say like WOW man.This is a lengthy description of this product.

 Can someone help me out here?

Your immediate question is essentially about the longest command that you
can type at the command line; I'm not really sure of the answer. I very
rarely do long commands like that from the command line. However, just for
the heck of it, I just signed on the MySQL and got to a command prompt. I
found that you can make the command pretty much as long as you like: just
press enter whenever you're running out of room and a new line with a new
'-' prompt will appear for you to write the next part of your command. End
your statement with a semicolon, press Enter and the continuation prompts
will stop and your statement will execute.

Now, *please* tell me that you don't propose to populate your entire table
this way and that you are just trying to create a couple of rows from the
command line so that you know how to do it

I don't think anyone with any pretensions of being professional would
populate anything but the tiniest test table via the command line. Put your
data into a flat file - or export it into a flat file from wherever it is
now - and use the LOAD DATA utility to populate your table. You can build
scripts that include the LOAD DATA command plus whatever SQL you need to
create and/or verify the contents of your table; creating and running the
script will only take you a few minutes once you get on to the technique and
be a LOT less painful - and less error-prone - than writing individual
INSERT statements for every row in your table.

I can post some examples if you're not sure what I mean.

Rhino


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:http://lists.mysql.com/[EMAIL PROTECTED]