对oracle还是比较熟悉的,对mysql也是零散的有些了解,今天看了下,简单总结:
1.查看mysql版本:mysqladmin --version
2.查看mysql进程:ps -ef|grep mysqld
3.关闭数据库:mysql -u root -p shutdown
4.启动服务:mysqld_safe
5.新建用户:
insert into user(host,user,authentication_string,select_priv,insert_priv,update_priv) values('localhost','xyz',PASSWORD('Abcd_1234'),'Y','Y','Y');
ERROR 1364 (HY000): Field 'ssl_cipher' doesn't have a default value
如果报错,是因为mysql为了安全,禁止直接insert来新建用户,
my-default.ini中有一条语句:
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
将 STRICT_TRANS_TABLES 删掉之后即可使用 insert 添加
更推荐通过grant方式
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON mysql.* TO 'xyz'@'localhost' IDENTIFIED BY 'Abcd_1234';
注意要flush privileges;
6.查看数据库:show databases
7.创建数据库:mysqladmin -u root -p create RUNOOB
8.删除数据库:mysqladmin -u root -p drop RUNOOB
9.选择数据库:use RUNOOB
10.查看正在使用的数据库:select database();或者直接status;
11.查看数据库是否自动提交:show variables like '%autocommit%';可以通过set autocommit=0/1改变
12.navicat远程连接mysql报错:
host is not allowed to connect mysql
这是user的权限问题,可用root用户执行下面语句
update user set host = '%' where user = 'xxxx';
FLUSH PRIVILEGES;
13.查看表字段:show columns from table1;
14.新增索引:ALTER table tableName ADD INDEX indexName(columnName);
15.查看建表语句:show create table table1;
16.常用查询语句:
命令 描述
SELECT VERSION( ) 服务器版本信息
SELECT DATABASE( ) 当前数据库名 (或者返回空)
SELECT USER( ) 当前用户名
SHOW STATUS 服务器状态
SHOW VARIABLES 服务器配置变量
17.将表导出到文件:
SELECT * FROM passwd INTO OUTFILE '/tmp/tutorials.txt';
18.将文件导入到表:
LOAD DATA LOCAL INFILE 'dump.txt' INTO TABLE mytbl;