MySql命令
- 登陆,如果没有在环境变量中配置路径,则需要定位到mysql安装的bin目录,输入mysql -uroot -p,回车,输入密码,回车。
- 修改密码:
- set password for root@localhost = password(‘root’);
- mysqladmin -uroot -p123456 password 123;
- select version(); 查看mysql版本。
- status;查看mysql详细信息。
- show databases 显示所有数据库。
- show variables like ‘%datadir%’ 显示数据库存放路径。
- create database dataname 创建名为dataname的数据库
- drop database dataname 删除名为dataname的数据库
- drop database if exists dataname 删除一个不一定存在的数据库
- use smart 连接(使用)名为smart的数据库
- create table tablename (<字段名1><类型1> [,…<字段名n><类型n>]); 创建数据表,例:
> create table myclass(
> id int(4) not null primary key auto_increment,
> name char(20) not null,
> sex int(4) not null default '0',
> degree double(16,2));
- show tables; 显示数据表。
- describe tableName;显示表结构。
- drop table tablename; 删除数据表
- insert into user(userName, password, email) values(‘zhibo405’, ‘zhibo405’, ‘444894216@qq.com’);插入时可以不写自增的主键。
- 查找:
- select * from tablename;查询所有信息
- select sex from myclass where name=‘Tom’;
- 删除:
- delete from myclass where name=‘Tom’;
- delete from table; 清空表
- TRUNCATE TABLE tablename, 如TRUNCATE TABLE trafficlight.details_address;
- 更改:
- update myclass set sex=1 where name=‘Tom’;
- update mycalss set sex=1,age=2 where name=“Tom”;
- alter table t1 rename t2; 修改表名
- alter table t2 add c varchar(30);增加列
- alter table t2 modify a tinyint not null, change b c char(20);修改列
- alter table t2 drop column c; 删除列
- 模糊查询表名
mysql数据库
SELECT * FROM information_schema.tables where table_schema = 'dbname' and table_name like 'device_history_%';
//只查询表名可以用 TABLE_NAME代替*号
SELECT TABLE_NAME FROM information_schema.tables where table_schema = 'dbname' and table_name like 'device_history_%';
dbname为数据库名称, 如果没有则查询所有数据库
h2数据库
SELECT * FROM information_schema.tables WHERE TABLE_NAME LIKE 'DEVICE_%';
//数据库名称应该不用指定, 如果需要可以像下面这样
SELECT * FROM information_schema.tables WHERE TABLE_CATALOG='dbname' AND TABLE_NAME LIKE 'DEVICE_%';
备份数据
使用mysqldump命令备份, 不需要进入mysql命令控制台, 不可使用powershell, 会出现ASCII '\0' appeared in the statement
错误.
23. 备份一个数据库多张表
mysqldump -u username -p dbname table1 table2 > c:\BackupName.sql
username为用户名, dbname为数据库名, table1为表名称
24. 备份一个数据库
mysqldump -uroot -p dbname > test.sql
- 备份多个个数据库
mysqldump -u username -p --databases dbname1 dbname2 > Backup.sql
- 备份所有数据库
mysqldump -u root -p --all-databases > C:\sqlbackup\test.sql
- 备份数据库加编码
mysqldump -uroot -p --default-character-set=utf8 dbname tablename > test.sql
- 还原数据库
mysql -uroot -p dbname < test.sql
还原加编码
mysql -uroot -p --default-character-set=utf8 dbname < test.sql