Linux 终端对Mysql数据库进行操作
本人Ubuntu 10.10 ,打开mysql命令:sudo mysql -u root -p
1、使用SHOW语句找出在服务器上当前存在什么数据库:show databases;
mysql> SHOW DATABASES; |
2、创建一个数据库abccs :
mysql>
CREATE DATABASE
abccs;
设置数据库的编码方式:DEFAULT CHARACTER SET utf8
注意不同操作系统对大小写的敏感。
3、选择你所创建的数据库
mysql>
USE
abccs
Database
changed
此时你已经进入你刚才所建立的数据库abccs.
4、 创建一个数据库表
首先看现在你的数据库中存在什么表:
mysql>
SHOW
TABLES;
Empty
set (0.00 sec)
说明刚才建立的数据库中还没有数据库表。下面来创建一个数据库表mytable:
我们要建立一个你公司员工的生日表,表的内容包含员工姓名、性别、出生日期、出生城市。
mysql> CREATE TABLE mytable (name VARCHAR(20), sex CHAR(1), |
由于name、birthadd的列值是变化的,因此选择VARCHAR, 其长度不一定是20。可以选择从1到255的任何长度,如果以后需要改变它的字长,可以使用ALTER TABLE语句。);性别只需一个字符就可以表示:"m"或"f",因此选用CHAR(1);birth列则使用DATE数据类型。
创建了一个表后,我们可以看看刚才做的结果,用SHOW TABLES显示数据库中有哪些表:
mysql> SHOW TABLES; |
5、显示表的结构:describe mytable
mysql> DESCRIBE mytable; |
6、 往表中加入记录
我们先用SELECT命令来查看表中的数据:
mysql>
select
*
from
mytable;
Empty
set (0.00 sec)
这说明刚才创建的表还没有记录。
加入一条新记录:
mysql> insert into mytable |
再用上面的SELECT命令看看发生了什么变化。我们可以按此方法一条一条地将所有员工的记录加入到表中。
7、用文本方式将数据装入一个数据库表
如果一条一条地输入,很麻烦。我们可以用文本文件的方式将所有记录加入你的数据库表中。创建一个文本文件“mysql.txt”,每行包含一个记录,用定位符(tab)把值分开,并且以在CREATE TABLE语句中列出的列次序给出,例如:
abccs f 1977-07-07 china |
使用下面命令将文本文件“mytable.txt”装载到mytable表中:mysql> LOAD DATA LOCAL INFILE "/data/mytable.txt" INTO TABLE mytable;
再使用如下命令看看是否已将数据输入到数据库表中:mysql> select * from mytable;
8、终端操作导入数据库(.sql文件)
mysql>use database;
mysql>source
/home/lw/mysql.sql;
将csv数据导入到数据库中
1.Use t005; (数据库)
2.load data local infile "/root/test.csv" replace into table t005.TTFClientOrder fields terminated by ',' optionally enclosed by '"' escaped by '//' lines terminated by '/r/n';
链接数据库
1. mysql –u root –p
2. su –l dltsidev3 切换用户 (Linux)
授权
Use t005
Grant select,update,insert,delete,drop,alter,create,index on t005.* to nz@10.10.1.5;
Flush privileges;
修改数据库编码格式:
ALTER TABLE `stock_info`
DEFAULT CHARACTER SET utf8
参考资料: