mysql 交互式命令。
1. 登陆mysql
示例:
mysql -h localhost -uroot -p123456
切换用户 就是重新登陆mysql
2. mysql 帮助:
示例: 进入mysql 后
mysql> help
mysql> help create
mysql> help show
mysql> help use
mysql> help select
mysql 服务器端语句必须以; 结尾
3.: 显示数据库,使用数据库,显示数据表, 查看表结构
mysql> show databases;
mysql> use redmine
mysql> show tables;
mysql> show columes from tablename;
等价于
mysql> describe tablename
4 创建数据库,创建数据表 , 删除数据表
mysql> creae database test;
mysql> creae table friendstbl(name varchar(20), address varchar(50), phone varchar(30));
mysql> drop table <表名>
查看数据库存放在哪里?
mysql> show variables like 'datadir'
5.数据表的增,删,改,查
mysql> insert into friendstbl(name,address,phone) values('张三','西二旗','123456');
mysql> delete from friendstbl(name,address,phone) where name='张三';
mysql> update friendstbl set address='上地' where name='张三';
mysql> select name, phone from friendstbl where address='西二旗';
select 语句可以有复杂的查询方式,利用group by, order 等语句, 加上join 等语句,可以从多个数据库中输出信息
原来用过,以后再补充。
6 显示当前用户, 当前数据库, 数据库版本号
mysql> select user();
mysql> select databases();
mysql> select version();
7 创建用户, 删除用户, 修改密码, 为用户授权
create user 'username'@'host' [identifiied by 'passward'];
示例:
mysql> create user hjj2@localhost identified by '123456';
mysql> create user hjj2@'%' identified by '123456'; #可从任何一台远程机器登陆
mysql> drop user hjj2@localhost
mysql> set password for hjj@localhost = password('123');
grant privileges on databasename.tablename to 'username@localhost'
示例:
mysql>
grant select,insert on testdatabase.testtbl to hjj@localhost
8: 查询数据库字符集及临时修改字符集
mysql> show variables like '%char%'
linux命令行下执行:
mysql> set character_set_results=utf8;
查询表是怎样创建的: 例如查cl_user表。
mysql> show create table cl_user;
9. 永久修改字符集.
linux下修改/etc/mysql/my.cnf
在如下处添加一行设置.
[mysqld]
character_set_server=utf8
----------------------------------------
MySQL修改root密码的多种方法
----------------------------------------
方法1: 用SET PASSWORD命令
mysql -u root
mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');
方法2:用mysqladmin
mysqladmin -u root password "newpass"
如果root已经设置过密码,采用如下方法
mysqladmin -u root password oldpass "newpass"
方法3: 用UPDATE直接编辑user表
mysql -u root
mysql> use mysql;
mysql> UPDATE user SET Password = PASSWORD('newpass') WHERE user = 'root';
mysql> FLUSH PRIVILEGES;
在丢失root密码的时候,可以这样
mysqld_safe --skip-grant-tables&
mysql -u root mysql
mysql> UPDATE user SET password=PASSWORD("new password") WHERE user='root';
mysql> FLUSH PRIVILEGES;
丢失密码的时候,
- 编辑/etc/mysql/my.cnf文件,在最后加入以下设置
[mysqld]
skip-grant-tables=1
重启mysql 服务, 即可免密码登录.