MYSQl记录过程中的使用经验
广告:
记录过程中的使用经验,不断完善中...
1. 下载Windows版本的mysql,比如mysql-4.0.20d-win,运行Setup程序,直接选择安装到c:\mysql目录,否则还要配置my.ini或my.cnf。
2. 将c:\mysql\bin加入到系统环境变量"PATH"中。
3. 以服务形式运行mysqld: mysqld --install 或者 net start mysql ,然后在"控制面板/管理工具/服务"中启动mysql服务。
4. 命令行中运行mysqlshow; mysql test 来测试是否安装成功
######## 修改密码
mysql> set password = password("new password");
######## 忘记了管理员密码,如何改密码
首先以ROOT身份进入LINUX。
然后
1. 停止MySQL
[root@it jash]# /etc/rc.d/init.d/mysql stop
或者也可以终止MySQL进程方式来
ps ax | grep MySQL
kill 进程号
2. 绕过授权表,重启MySQL
[root@it jash]# /usr/bin/safe_mysqld --skip-grant-tables &
3. 重设口令
[root@it jash]# mysqladmin -u root flush-privileges password "123456"
######## 登录MySQL
mysql -h hostname -u username -p[password]
或者:
mysql -h hostname -u username --password=password
其中,hostname为装有MySQL数据库的服务器名称,username和password分别是用户的登录名称和口令。
######## 增加新用户或修改已有用户权限
mysql> grant select,insert,update,delete,index,alter,create,drop,references on
dbname.tablename to username@localhost identified by "passwd";
mysql> flush privileges;
######## 创建数据库
以管理员身份登录, 然后输入:
mysql> create database dbname;
######## 切换数据库
use dbname;
######## 创建表
create table userinfo( id int unsigned auto_increment not null, name varchar(15), phone bigint , primary key(id), key person(name,phone));
######## 查看有哪些数据库和表
show databases;
show tables;
######## 查看表都有那些字段(field)
describe tablename;
######## 插入记录(insert)
insert into tablename values("yahai", 3527, NULL);
insert into tablename values("malin", 3528, NULL);
insert into tablename values("guodong", 3529, NULL);
insert into userinfo (name, phone) values("yuanming", 3530);
######## 查询记录(select)
select * from userinfo where name = "malin";
复杂些的,从两个表中查询:
select * from db1.tb1 t1, db2.tb2 t2 where t1.id =1 and t2.id = 1;
select * from db1.tb1 t1, db1.tb2 t2 where t1.id =1 and t2.id = 1;
######## 修改记录(update)
update userinfo set name = 'malin', phone=3529, id = 4 where name = "malin1";
######## 删除记录(delete)
delete from userinfo where id = 3;
######## 复制表(select as)
create table userinfo1 as (select * from userinfo);
######## 删除表(drop table)
drop table userinfo1;
######## 备份表
1.备份
mysqldump --add-drop-table --add-locks -u root -p dbname userinfo > a.txt
2.恢复
mysql -u root -p dbname < a.txt;
######## 将MySQL的操作结果从屏幕重新定向到文件
方法1:
创建脚本文件test.sh,内容如下:
mysql -u username -p passwd -t dbname << 0
select * from tablename;
在shell中输入:
test.sh >> a.txt;
方法2:
编辑一个脚本文件batch-file,内容如下:
select * from tablename;
在shell中输入:
mysql -u username -p passwd -t dbname < batch-file >> a.txt;
广告: