第一招、mysql服务的启动和停止
net stop mysql net start mysql
第二招、登陆mysql
mysql -u用户名 -p用户密码 mysql -uroot -p, 回车後提示你输入密码,输入12345,然後回车即可进入到mysql中了,mysql的提示符是: mysql> 注意,如果是连接到另外的机器上,则需要加入一个参数-h机器IP
指定地址和端口号登陆:mysql -uroot -p -h127.0.0.1 -P33366
修改root 用户密码:
用UPDATE直接编辑user表
mysql -u root
mysql> use mysql;
mysql> UPDATE user SET Password = PASSWORD('newpass') WHERE user = 'root';
mysql> FLUSH PRIVILEGES;
第三招、增加新用户
grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码" 增加一个用户user1密码为password1,让其可以在本机上登录, 并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入mysql,然後键入以下命令:grant select,insert,update,delete on *.* to user1@localhost Identified by "password1";如果希望该用户能够在任何机器上登陆mysql,则将localhost改为"%"。 如果你不想user1有密码,可以再打一个命令将密码去掉。grant select,insert,update,delete on mydb.* to user1@localhost identified by "";
CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON * . * TO 'newuser'@'localhost';
GRANT ALL PRIVILEGES ON DBName . * TO 'newuser'@'localhost';
第四招: 操作数据库
登录到mysql中,然後在mysql的提示符下运行下列命令,每个命令以分号结束。 显示数据库列表。 show databases;
缺省有两个数据库:mysql和test。 mysql库存放着mysql的系统和用户权限信息,我们改密码和新增用户,实际上就是对这个库进行操作。 显示库中的数据表: use mysql; show tables; 显示数据表的结构: describe 表名; 建库与删库: create database 库名; drop database 库名; 建表: use 库名; create table 表名(字段列表); drop table 表名; 清空表中记录: delete from 表名; 显示表中的记录: select * from 表名;
第五招、导出和导入数据
导出数据: mysqldump --opt test > mysql.test 即将数据库test数据库导出到mysql.test文件,後者是一个文本文件如:mysqldump -u root -p123456 --databases dbname > mysql.dbname 就是把数据库dbname导出到文件mysql.dbname中。
如果遇见:Access denied 那可能是你用来备份的数据库用户没有lock table的权限,可以换一个权限更高的用户,或者使用mysqldump的另一个选项:--single-transaction
mysqldump -uyourusername -pyourpassword --single-transaction yourdb > yourdb.sql
导入数据: mysqlimport -u root -p123456 MySQL批处理命令 批处理是一种非交互式运行mysql程序的方法,如同您在mysql中使用的命令一样,你仍然将使用这些命令。 为了实现批处理,您重定向一个文件到mysql程序中,首先我们需要一个文本文件,这个文本文件包含有与我们在mysql中输入的命令相同的文本。比如我们要插入一些数据,使用包含下面文本的文件(文件名为New_Data.sql,当然我们也可以取名为New_Data.txt及任何其他的合法名字,并不一定要以後缀sql结尾): USE Meet_A_Geek; INSERT INTO Customers (Customer_ID, Last_Name) VALUES(NULL, "Block"); INSERT INTO Customers (Customer_ID, Last_Name) VALUES(NULL, "Newton"); INSERT INTO Customers (Customer_ID, Last_Name) VALUES(NULL, "Simmons"); 注意上面的这些句子的语法都必须是正确的,并且每个句子以分号结束。上面的USE命令选择数据库,INSERT命令插入数据。 下面我们要把上面的文件导入到数据库中,导入之前要确认数据库已经在运行,即是mysqld进程(或者说服务,Windows NT下面称为”服务“,unix下面为”进程“)已经在运行。然後运行下面的命令: bin/mysql –p (sudo) mysql create database XXXX; use XXXX; source blue.sql
导入的时候需要注意编码:(可能出现错误ERROR:Unknown command '\"'.)
C:\Program Files\MySQL\MySQL Server 5.6\bin>mysql -u root -p --default-character-set=utf8 dmmc < dmmc.sql
可能遇见的错误:ERROR 2006 (HY000): MySQL server has gone away
解决办法:my.ini
max_allowed_packet=64M ( This is useful when the columns have large values, which cause the issues)
*************************************************SQL 语句*******************************************
SQL 语句
查询表:
SELECT * FROM INFORMATION_SCHEMA.TABLES where TABLE_SCHEMA='dmmc'
查询指定数据库中指定表的所有字段名
select column_name from information_schema.columns where table_schema='dmmc' and table_name='products';
添加组合唯一索引:
ALTER TABLE `t_specification_value` ADD UNIQUE KEY `specification` (`specification`,`code`)
|