连接数据库:

$ mysql -h hostname -u username -p
Enter password:(输入该用户密码) 
查看数据库:
SHOW DATABASES;
创建数据库:
CREATE DATABASE db_name;
删除数据库:
DROP DATABASE db_name;


数据库授权:

GRANT ALL PRIVILEGES ON blogs_mcucode.* TO mcucode@localhost;

将数据库blogs_mcucode的所有表(*)的所有权限(ALL PRIVILEGES),赋予用户mcucode@localhost.

取消授权:

REVOKE ALL PRIVILEGES ON blogs_mcucode.* FROM 'username'@'localhost';

**查看当前数据库中的数据表:** SHOW TABLES; > **新建数据表:** CREATE TABLE pet( name VARCHAR(20), owner VARCHAR(20), species VARCHAR(20), sex CHAR(1), birth DATE, death DATE); > **新建数据表:** 指定ID为主键,并且自动递增。 CREATE TABLE users ( id int(4) NOT NULL AUTO_INCREMENT, username varchar(20) NOT NULL, password varchar(64), PRIMARY KEY (`id`) ); > **删除数据表:** DROP TABLE pet; > **清空数据表:** TRUNCATE TABLE mytable; > **重名名数据表** RENAME TABLE old_name to new_name; ---------- **查看数据表字段:** DESCRIBE pet; **增加字段** ALTER TABLE tb_name ADD age INT, ADD address VARCHAR(11); > **删除字段** ALTER TABLE tb_name DROP COLUMN age, DROP COLUMN address; **修改字段类型** ALTER TABLE tb_name MODIFY age VARCHAR(10); **修改字段名称(必须重新指定该字段的类型)** ALTER TABLE tb_name CHANGE age ages INT; **调整id字段放在第1列:** ALTER TABLE tb_name MODIFY id INT FIRST; **调整password字段在username字段之后:** ALTER TABLE tb_name MODIFY password VARCHAR(20) AFTER username; ---------- **增加自增ID字段:** ALTER TABLE tb_name ADD id INT NOT NULL AUTO_INCREMENT PRIMARY KEY; **重建自增ID方法:** 删除重新建立该字段; ---------- **新建带密码用户:** CREATE USER 'username' IDENTIFIED BY 'password'; **新建不带密码用户:** CREATE USER 'username' **或者直接对用户数据库操作:** INSERT INTO mysql.user (host,user,password) values("localhost","username",password("123456")); > **查看用户:** SELECT user,host,password FROM mysql.user; > **删除用户:** DROP USER user1 [, user2]; > **修改用户密码(mysql命令):** SET PASSWORD [FOR username]=PASSWORD("123456"); > **注意事项:** 1.不带[FOR ....]参数表示修改自己的密码; 2.必须用函数PASSWORD对密码进行加密; 3.管理员修改普通用户密码后需执行刷新权限操作; > **修改用户密码(系统命令):** $mysqladmin -u username -p password(newpasswd) Enter password: (输入原始密码即可) ---------- **刷新权限** FLUSH PRIVILEGES; 部分操作完成后,需要刷新权限才生效(具体命令列表待续) 1.管理员用户更改普通用户密码; ---------- **数据库导入** # mysql -u root -p dbnamedbdata.sql Enter password:(输入该用户密码) --------- **数据表导入CVS数据** load data infile '/var/files.csv' into table ids fields terminated by ',' optionally enclosed by '"' escaped by '"' lines terminated by '\r\n'; > **数据表导出CVS数据** SELECT * FROM test_info INTO OUTFILE '/tmp/test.csv' FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"' ESCAPED BY '"' LINES TERMINATED BY '\r\n'; > **命令说明:** (1)字段之间以逗号分隔; (2)字符串以半角双引号包围 (3)字符串本身的双引号用两个双引号表示 (4)数据行之间以\r\n分隔; > **从文件中加载数据(类似于CVS)** LOAD DATA LOCAL INFILE '/path/pet.txt' INTO TABLE pet LINES TERMINATED BY '\r\n'; ---------- **删除前缀相同的数据表** 数据库名称database_name,前缀boblog; SELECT CONCAT('DROP TABLE', GROUP_CONCAT(table_name) , ';' ) AS statement FROM information_schema.tables WHERE table_schema = 'database_name' AND table_name LIKE 'boblog%'; 这样会生成一条删除语句,复制后执行即可; **文章摘要:** 本文描述Mysql数据库存实现外网访问的方法, ---------- **设置外网访问数据库:** 基于安全考虑,一般不建议数据库外网直连,但既然有此功能,所以在一定场合,还是很有用的。 **1.修改配置文件** $sudo vim /etc/mysql/my.cnf 把bind-address参数的值改成你的内/外网IP或0.0.0.0,或者直接注释掉这行. > **2.更新host** $mysql -u root -p mysql> use mysql; mysql> select user,host from user; mysql> update user set host='%' where user='dachun'; mysql> flush privileges; 这里重点在host='%'这里 > **3.授权用户** mysql> GRANT ALL PRIVILEGES ON *.* TO 'dachun'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION; mysql> flush privileges; > **4.修改iptables允许数据库端口(3306)** #iptables -A INPUT -p tcp --dport 3306 -j ACCEPT ![请输入图片描述][1] [1]: http://img.oroct.com/blog/20151225_001.jpg