Your browser does not seem to support CSS. If images appear below, please disregard them.
toggle
July
S M T W T F S
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
Sponsored Links
Latest Postings
· Blackbeard.....
by Gremelin on 07/04/16 08:31 PM
Topic Options
Rate This Topic
#16061 - 02/13/03 07:13 AM Connecting to MySQL and using dump files from the command line
Joined: Dec 2002
Posts: 3,255
§intå× Offline
§intå× Offline



Joined: Dec 2002
Posts: 3,255
Maryland
With all the neat tools like PHPmyAdmin out there few bother to learn the command line any more. I decided I wanted to learn and decided to share some with you. In this lesson "$" will represent the command prompt. I put this in the Unix section because Mysql is widely used in web design, but it's uses reach far beyond that.. All info came from http://www.mysql.com which I found a bit cryptic in some sections.

Now first thing you have to do is connect to the data base. This is done like so.

http://www.mysql.com/documentation/mysql/bychapter/manual_Tutorial.html#Connecting-disconnecting

$ mysql -u User_name_here -p *nothing after the p you will be prompted*

Enter passward
Password_here


It will look like so on your screen

$ mysql -u User_name_here -p
Enter passward *******

Login sucessful...
mysql>


Now you are ready to start queries and storing data. Lets look at how this works shall we? You will notice your prompt now is "mysql>" This lets you know you are in. By the way type "exit" or "Quit" or "Ctrl_D" maybey "Ctrl_z" should put you back at a regular command prompt.

Now the first thing you will need is of course a database. To see all data bases do a "Show Databases"

mysql> SHOW DATABASES;

Notice the ";" This is needed to end the command if you do not type in ";" you might get something like this

mysql> SHOW DATABASES
->

If you so simpley type in the ";".


mysql> SHOW DATABASES
->;

You will get some out put that looks something like this.

Code:
 
mysql> SHOW DATABASES;
+----------+
| Database |
+----------+
| mysql    |
| test     |
| tmp      |
+----------+
 
If you do not have a data base that you have created you will need to do so. Here is how you create a database.

mysql> CREATE DATABASE Database1;

Pretty easy right? You will also need to create a table in your database. For this I will give you a simple table but you will have to read up on different types of fields and table structure. I could write a book on this alone. See the following links

http://www.mysql.com/documentation/mysql/bychapter/manual_Reference.html#CREATE_TABLE

http://www.mysql.com/documentation/mysql/bychapter/manual_Table_types.html#ISAM

http://www.mysql.com/documentation/mysql/bychapter/manual_Table_types.html#HEAP

http://www.mysql.com/documentation/mysql/bychapter/manual_Table_types.html#InnoDB

http://www.mysql.com/documentation/mysql/bychapter/manual_Tutorial.html#Creating_tables

http://www.mysql.com/documentation/mysql/bychapter/manual_MySQL_Optimisation.html#Table_cache

http://www.mysql.com/documentation/mysql/bychapter/manual_Reference.html#Legal_names


http://www.mysql.com/documentation/mysql...ml#BACKUP_TABLE

There are so many other links I could list but these should lead you where you need to look. Now for a basic table. Lets say we want to create an email address book. We need the

First name
Last name
Date data was inserted (so we know if it could be outdated)
email address
A point of refference as to call the data up with.

mysql> CREATE TABLE Email_table (Fname VARCHAR(25), Lname VARCHAR(25), Date VARCHAR(10), email VARCHAR(255), id int(4) NOT NULL auto_increment) PRIMARY KEY (id);

Look kind of complicated? It realy isn't. You see the VARCHAR(25) in there? VARCHAR is just what type of field this will be. In this case this field will hold text. The (25) part is just how many charaters will be allowed to be stored in this field. So "Fname" will be a field in the table that will store the First name. Not too many people have names with more than 25 charaters so we seet 25 as the limit. The other type of field you see is "int". Or integer. This is a numeric field.

id is a numeric field that will auto increment. This means only number will go in here. You do not ever have to put anything in this field it will automaticaly cout each time a new row is added. That is, the first time you insert any data id field will be set to one. The next time or row it will be set to 2. This is a constant that you can use in scripts to grab and manipulate data.

If you do a "DESCRIBE" command you can see the basic structure of your data.

mysql> DESCRIBE Email_table;

*rember the ";"

This will give you something like

Code:
 
mysql> DESCRIBE Email_table;
+---------+-------------+------+-----+---------+-------+
| Field   | Type        | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| Fname   | varchar(25) |      |     | NULL    |       |
| Lname   | varchar(25) |      |     | NULL    |       |
| Date    | varchar(10) |      |     | NULL    |       |
| Email   | varchar(255)|      |     | NULL    |       |
| id      | int(11)     |      | Pri | NULL    |       |
+---------+-------------+------+-----+---------+-------+
Next we want to insert some data right. To do this we will use the insert command.

http://www.mysql.com/documentation/mysql/bychapter/manual_Tutorial.html#Loading_tables

mysql> INSERT INTO Email_table Values 'admin', 'Gizmo', '01/13/2003', [email protected]');

or

mysql> INSERT INTO Email_table
-> Values ('admin', 'Gizmo', '01/13/2003', [email protected]');


Hit enter and watch the data go. Well not realy, but it is in there now. Want to see?

mysql> Select * FROM Email_table;
YOu should see all the data nicely grided out for you. Well there are the basics of Mysql from the command line.


My New site OpenEyes
Top
Sponsored Links
#16062 - 02/13/03 07:18 AM Re: Connecting to MySQL and using dump files from the command line
Joined: Dec 2002
Posts: 3,255
§intå× Offline
§intå× Offline



Joined: Dec 2002
Posts: 3,255
Maryland
Oh I almost forgot the part about using dump files. If local put the dump file in a directory you can rember, if remote FTP file up to a directory you want to use. For this we use the "SOURCE" command.

First login to Mysql, and get into the database (db) you want to use. To do this use the "USE" command.

mysql> USE Database1
Database Changed

now we want to use our *.sql file to dump a large amout of data into the database.

mysql> source "/path/to/directory/dump_file.sql";

Then just let it run. That simple.


My New site OpenEyes
Top
#16063 - 02/13/03 07:19 AM Re: Connecting to MySQL and using dump files from the command line
Joined: Dec 2002
Posts: 3,255
§intå× Offline
§intå× Offline



Joined: Dec 2002
Posts: 3,255
Maryland
All of this should work in telnet also.


My New site OpenEyes
Top
#16064 - 02/13/03 01:55 PM Re: Connecting to MySQL and using dump files from the command line
Joined: Mar 2002
Posts: 197
Predator Offline
Member
Predator Offline
Member

Joined: Mar 2002
Posts: 197
Belgium
You also can use the mysqldump program located in the bin dir of mysql.

./mysqldump -u root -pPass --all-databases >backup.sql

This will dump your whole mysql database.
To dump a specific database:
./mysqldump -u root -pPass --opt database > backup.sql


To put the whole database back:
./mysql -u root -pPass < backup.sql

To put one back:
./mysql -u root -pPass database < backup.sql


Never argue with fools... They will only drag you down to their level, and beat you with experience...
Top
#16065 - 02/13/03 09:32 PM Re: Connecting to MySQL and using dump files from the command line
Joined: Feb 2002
Posts: 7,195
Gremelin Offline
Community Owner
Gremelin Offline

Community Owner

Joined: Feb 2002
Posts: 7,195
Portland, OR; USA
Learner, if you have the time i have a favor/project for you ...


Donate to UGN Security here.
UGN Security, Back of the Web, and VNC Web Services Owner
Top

Member Spotlight
Crime

Crime
SC, usa
Posts: 506
Joined: March 2002
Show All Member Profiles 
Forum Statistics
Forums46
Topics46,229
Posts81,399
Members2,157
Most Online1,567
Apr 25th, 2010
Top Posters(All Time)
UGN Security 39,393
Gremelin 7,195
§intå× 3,255
SilentRage 1,273
Ice 1,146
pergesu 1,136
Infinite 1,041
jonconley 955
Girlie 908
unreal 860
Newest Members
Herbert_Sherbert, codemauve, Lillysdragon1984, Brewwit, boa
2157 Registered Users
Who's Online Now
0 registered members (), 1 guest and 0 spiders.
Latest News