mysql 操作知识
转自http://topic.csdn.net/u/20110407/10/66837565-889D-4219-AB9E-92CF3296788A.html
1,查看数据库状态 及启动停止
/etc/init.d/mysqld status
/etc/init.d/mysqld start
/etc/init.d/mysqld stop
2,给用户配置初始密码123456:
mysqladmin -u root -password 123456
3,修改root用户密码为 abc123
mysqladmin -u root -p123456 password abc123
4,如果想去掉密码:
mysqladmin -u root -pabc123 password ""
5,root连接数据库有密码和无密码:
mysql -u root(-uroot) -p
mysql
6,增加用户 test1 密码 abc,让它可以在任何主机上登录,并对所有数据库有查询,插入,修改,删除的权限:
格式: grant select on 数据库.* to 用户名@登录主机 identified by "密码"
grant select,insert,update,delete on *.* to test1@"%" Identified by "abc";
7,使用test1账号从其他主机上登录命令:
mysql -h 主机名 -u test1 -pabc
eg: mysql -h 10.239.48.109 -u test1 -pabc
8,增加一个用户test2,让它只可以在localhost上登录,并可以对数据库mydb进行查询,插入,修改,删除的操作,
这样用户即使使用知道test2的密码,他也无法从internet 上直接访问数据库,只能通过mysql主机上的web页面来访问。
grant select,insert,update,delete on mydb.* to test2@localhost identified by "abc";
grant select,insert,update,delete on mydb.* to test2@localhost identified by ""; 设置无密码
9,显示数据库列表:
show databases;
use mysql 打开库
show tables;
10,表的操作
describle 表名; 显示数据表的结构
create database 库名;
drop database 库名;
create table 表名(字段设定列表)
drop table 表名;
delete from 表名;清空表记录
select * from 表名; 显示表中的记录
insert into 表名 values(, ,)
alter table 表名 add column <字段名><字段选项>
导出数据:
mysqldump --opt test > mysql.test //将数据库test导出到mysql.test文件,后面是一个文本文件
mysqldump -u root -p123456 --databases dbname > mysql.dbname //就是把数据库dbname导出到文件mysql.dbname中。
导入数据:
mysqlimport -u root -p123456 < mysql.dbname
将文本数据导入数据库:
文本数据的字段之间用tab键隔开
use test
load data local infile "文件名" into table 表名;
eg: load data local infile "D:/mysql.txt" into table mytable;
导入.sql 文件命令
use database
source d:/mysql.sql;