Mysql常用基本命令
mysql的默认安装目录
windows: C:\Program Files\MySQL\
mysql命令行历史记录文件
~/.mysql_history
在Linux下启动Mysql。
#/etc/init.d/mysql start
重启mysql服务
查看mysql运行状态
登录到mysql
Enter password:
-h是host的缩写,表示登录到哪一个mysql服务器,localhost是本地。
如果要登录到222.222.222.222的mysql服务器可以这样写:
Enter password:
显示mysql中所有的数据库
显示test数据库中所有的表
>show tables;
用来设置客户端的字符集的,与服务器端的字符集无关
如果你用终端登录进mysql来查询包含中文的数据时,如果没法查到数据或中文为乱码,可以尝试设置这个来解决问题
or
set names utf8; -- 不是utf-8
如果想查看当前的状态及编码可以使用
status
如果想知道MySQL数据库中每个表占用的空间、表记录的行数的话,可以打开MySQL的 information_schema 数据库。
在该库中有一个 TABLES 表,这个表主要字段分别是(我们关心的字段):
TABLE_NAME:表名
ENGINE:所使用的存储引擎
TABLES_ROWS:记录数
DATA_LENGTH:数据大小
INDEX_LENGTH:索引大小
查看表空间和索引大小
删除一张表,并让自动增长的ID从1开始计算
执行一个.sql文件
修改root账户密码
flush privileges;
解决客户端与MySQL服务器端的连接
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
FLUSH PRIVILEGES;
方法一:
update user set host ='%'where user ='root'
方法二:
GRANT SELECT,INSERT,UPDATE,DELETE ON dbname.* TO root@192.168.1.222 identified by 'password';
查看MySQL关于character_set的变量
show variables like '%char%';
备份与还原
MySql的备份可用命令mysqldump ,
使用方法很简单,mysqldump -u 用户名 -p (密码) -h 主机名 数据库名 >路径/备份名.bak;
同时也可以是用mysqldump到处数据结构(tablename.sql)和数据(tablename.txt) mysqldump -u 用户名 -p (密码) -h 主机名 数据库名 tablename1 tablename2 > back.sql或mysqldump -u 用户名 -p (密码) -h 主机名 数据库名 --tab 路径 --opt 数据库名.
还原用mysql命令,mysql -u 用户名 -p (密码) -h 主机名 --one-database 还原数据库名 < 路径/备份名.bak,--one-database是指定要恢复的数据库.
还原还可以登录进Mysql后直接执行sql文件 source /x/bak.sql