mysql数据库的操作大全_mysql常用操作大全

1.修改密码:

格式:mysqladmin -u 用户名 -p 旧密码 password 新密码

2.增加新用户:

>grant create,select,update....(授予相关的操作权限)

->on 数据库.*

-> to 用户名@登录主机 identified by '密码'

操作实例:

给root用户添加密码:

# mysqladmin -u root password 52netseek

因为开始root没有密码,所以-p旧密码一项可以省略.

登陆测试:

# mysql -u root -p 回车

输入密码,成功登陆.

将原有的mysql管理登陆密码52netseek改为52china.

# mysqladmin -u root -p 52netseek password '52china'

创建数据库添加用户并授予相应的权限:

mysql> create database phpbb;

Query OK, 1 row affected (0.02 sec)

mysql> use phpbb;

Database changed

mysql> grant create,select,update,insert,delete,alter

-> on phpbb.*

-> to phpbbroot@localhost identified by '52netseek';

Query OK, 0 rows affected (0.00 sec)

授予所有的权限:

>grant all privileges

>on bbs.*

>to bbsroot@localhost identified by '52netseek'

回收权限:

revoke create,select,update,insert,delete,alter

on phpbb.*

from phpbbroot@localhost identified by '52netseek';

完全将phpbbroot这个用户删除:

>use mysql

>delete from user

where user='phpbbroot' and host='localhost';

>flush privileges; 刷新数据库

问:如果忘记了MySQL的root密码应当如何取回?

答:解决方法如下:

在my.cnf的[mysqld]字段加入:

skip-grant-tables

然后重启你的mysqld,这样久没有密码了.

然后进入mysql。

UPDATE mysql.user SET Password=PASSWORD

('password') WHERE User='root';

成功后

FLUSH PRIVILEGES;

最后去掉my.cnf中的skip-grant-tables

重启mysqld。

三,数据库简单操作

1.显示数据库列表:

>show databases;

mysql

test

2.使其成为当前操作数据库

>use mysql; 打开数据库.

>show tables; 显示mysql数据库中的数据表.

3.显示数据表的表结构:

>describe 表名;

>describe user; 显示user表的表结构:

4.创建数据库,建表

>create database 数据库名;

>use 数据库名;

>create table 表名(字段设定列表)

5.删除数据库,册除表

>drop database 数据库名;

>drop table 表名;

6.显示表中的记录;

select * from 表名;

7.修改数据库结构:

增加字段:

alter table dbname add column

修改字段:

alter table dbname change

删除字段:

alter table dbname drop column

实例操作:

>create database office;

>use office;

mysql> create table personal(

-> member_no char(5) not null,

-> name char(,

-> birthday date,

-> exam_score tinyint,

-> primary key(member_no)

-> );

Query OK, 0 rows affected (0.01 sec)

>desc personal; 显示表结构:

+------------+------------+------+-----+---------+-------+

| Field | Type | Null | Key | Default | Extra |

+------------+------------+------+-----+---------+-------+

| member_no | char(5) | | PRI | | |

| name | char( | YES | | NULL | |

| birthday | date | YES | | NULL | |

| exam_score | tinyint(4) | YES | | NULL | |

+------------+------------+------+-----+---------+-------+

4 rows in set (0.00 sec)

insert into personal values ('001','netseek','1983-03-15','95');

insert into personal values ('002','heihei','1982-02-24','90');

insert into personal values ('003','gogo','1985-05-21','85');

insert into personal values ('004','haha','1984-02-25','84');

insert into personal values ('005','linlin','1982-04-28','85');

您正在看的MySQL教程是:MySQL数据库学习笔记。 insert into personal values ('006','xinxin','1985-03-15','75');

mysql> select * from personal;

+-----------+---------+------------+------------+

| member_no | name | birthday | exam_score |

+-----------+---------+------------+------------+

| 001 | netseek | 1983-03-15 | 95 |

| 002 | heihei | 1982-02-24 | 90 |

| 003 | gogo | 1985-05-21 | 85 |

| 004 | haha | 1984-02-25 | 84 |

| 005 | linlin | 1982-04-28 | 85 |

| 006 | xinxin | 1985-03-15 | 75 |

+-----------+---------+------------+------------+

修改数据库表:

要求: 在birthday这后增加一个为height的字段,数据类型为tinyint.

将字段exam_score 改名为scores,数据类型不变

>alter table personal

->add column height tinyint after birthday,

->change column exam_score scores tinyint;

mysql> select * from personal;

+-----------+---------+------------+--------+--------+

| member_no | name | birthday | height | scores |

+-----------+---------+------------+--------+--------+

| 001 | netseek | 1983-03-15 | NULL | 95 |

| 002 | heihei | 1982-02-24 | NULL | 90 |

| 003 | gogo | 1985-05-21 | NULL | 85 |

| 004 | haha | 1984-02-25 | NULL | 84 |

| 005 | linlin | 1982-04-28 | NULL | 85 |

| 006 | xinxin | 1985-03-15 | NULL | 75 |

+-----------+---------+------------+--------+--------+

给表中插入数据:

>update personal set scores=95+5 where name='netseek';

>select scores from personal where name='netseek';

+--------+

| scores |

+--------+

| 100 |

+--------+

删除表名字为'gogo'所有的信息中的的:

> delete from personal where name='gogo';

册除数据库中的表:

mysql>drop table if exists personal;

三,数据库的导入与导出

导出:

使用select into outfile 'filename'语句

使用mysqldump实用程序

使用select into outfile 'filename'语句

1.只能处理单个表,输出文件只有数据,没有表结构

我们要将office,其中有一个表为personal,现在要把personal卸成文本文件out.txt:

>use office;

>select * from personal into outfile 'out.txt'; 可以看在/var/lib/mysql/office/目录下有out.txt

select * from personal into outfile './out.txt'; 可以看在out.txt 在/var/lib/mysql/目录下用out.txt

2.使用mysqldump实用程序(可以轻松处理多个表)

# cd /var/lib/mysql

导出建立相关表的建表命令和插入指令

# mysqldump bbs >bbs.sql 将数据库bbs导入到bbs.sql中

如果要将bbs.sql导入数据库可以使用:

mysql> create database bbstest; 先建立一个名为office 的数据库.

# mysql bbstest

只想导出建表指令:

# mysqldump -d bbs >bbscreate.sql

只想导出插入数据的sql指令:

# mysqldump -t bbs >bbsinsert.sql

同时导出数据库中建表指令和表中的数据:

# mysqldump -T./ bbs cdb_admingroups (其中./表示当前目录,cdb_admingroups为bbs数据库其中的一个表)

#ls

cdb_admingroups.sql 导出了建表指令

cdb_admingroups.txt 导出了表中的数据

导入:

从文件中加载数据库:

mysql>load data infile "/tmp/name.txt" into table names;

mysql>select * from names;

四,数据库备份

1.手动拷贝备份:

MySQL数据库的文件保存在目录/var/lib/mysql中,数据库为每个库建立一个目录,所有的数据库文件都在这些目录中.

[root@linuxhero mysql]#ls

[root@linuxhero mysql]#servcie mysqld stop 先停止数据库

bbs mysql mysql.sock phpbb test office 显示其中的数据库.

如果我们要将现在的数据库目录备份为mysql.bak .

[root@linuxhero lib]# cp -rf mysql mysql.bak

如果数据库遭到了破坏,现在要将数据库恢复:

[root@linuxhero lib]# cp -rf mysql.bak/* mysql

恢复数据库以后,var/lib/mysql中的文件已改变了,要更改文件的所属权限必须改变MySQL数据库的用户读写权限。

所以我们得启动和运行mysql,并登陆数据库:

[root@linuxhero lib]# /etc/init.d/mysqld start

[root@linuxhero lib]# mysql

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
一. 概述 5 二. 卸载MySQL数据库 6 2.1 备份数据库 6 2.2 卸载MySQL数据库 6 2.2.1 检查MySQL服务并关闭服务进程 6 2.2.2 查找MySQL的安装目录并彻底删除 6 2.2.3 删除MySQL配置文件 7 2.2.4 删除MySQL用户以及用户组 7 三. 安装MySQL数据库 9 3.1 安装MySQL数据库 9 3.1.1 下载MySQL安装包 9 3.1.2 上传并解压MySQL安装包 9 3.1.3 添加系统MySQL组和MySQL用户 10 3.1.4 安装MySQL数据库 10 3.1.5 启动MySQL服务和添加开机启动MySQL服务 11 3.1.6 修改MySQL的root用户密码 13 3.1.7 把MySQL客户端放到默认路径。 13 3.2 配置MySQL数据库远程访问权限 13 3.2.1 进入 mysql 14 3.2.2 使用mysql数据库 14 3.2.3 查看用户表 14 3.2.4 创建远程登录用户并授权 15 3.2.5 强制刷新权限 15 3.3 恢复备份的数据库 15 四. MySQL数据库数据迁移 16 4.1 迁移前准备 16 4.1.1 停止MySQL数据库服务 16 4.1.2 创建数据库迁移目录 16 4.2 数据迁移 17 4.2.1 复制数据库数据到迁移目录 17 4.2.2 修改配置并启动服务 17 五. Mysql 数据目录存放位置更改 19 六. MySQL主从配置 20 6.1 基本条件 20 6.2 安装MySQL数据库 20 6.3 主机配置 20 6.3.1 修改my.cnf配置文件 20 6.3.2 初始化bin-log日志 21 6.4 从机配置 21 6.4.1 修改my.cnf配置文件 21 6.4.2 添加同步主机配置 22 七. MySQL互为主从配置 24 7.1 基本条件 24 7.2 安装MySQL数据库 24 7.3 主机A配置 24 7.3.1 修改my.cnf配置文件 24 7.3.2 给主机B赋予mysql权限 25 7.3.3 初始化bin-log日志 26 7.4 主机B配置 27 7.4.1 修改my.cnf配置文件 27 7.4.2 给主机A赋予mysql权限 28 7.4.3 初始化bin-log日志 29 7.5 同步配置 30 7.5.1 主机A设置同步 30 7.5.2 主机B设置同步 31 八. my.cnf配置样例 34 8.1 my.cnf推荐配置 34 8.2 my.cnf主从推荐配置 35 8.2.1 主机my.cnf推荐配置 35 8.2.2 从机my.cnf推荐配置 35 8.3 my.cnf互为主从推荐配置 36 8.3.1 主机A my.cnf推荐配置 36 8.3.2 主机B my.cnf推荐配置 37 8.3.3 鄙人的my.cnf简单配置 38 九. Mysql根据ibd文件恢复数据 40 9.1 创建新数据表,和源数据表一致 40 9.2 删除新数据表的表空间 40 9.3 将待恢复的<table_name>.ibd文件copy到目标数据库文件夹下,并修改文件权限 40 9.4 导入表空间 41 十. 根据frm文件恢复表结构 42 10.1 新建同名的表 42 10.1.1 建立新的表结构 42 10.1.2 修改新建的数据表结构为17个字段 43
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值