2015-05-08LAMP第四部分mysql操作

课程大纲:
1. 忘记root密码
编辑mysql主配置文件 my.cnf 在[mysqld]字段下添加参数  skip-grant  ,重启数据库服务,这样就可以进入数据库不用授权了 mysql -uroot ,修改相应用户密码 use mysql; update user set password=password(‘your password‘) where user=‘root‘;flush privileges;  最后修改/etc/my.cnf 去掉 skip-grant , 重启mysql服务
2. skip-innodb   我们可以增加这个参数不使用innodb引擎。
3. 配置慢查询日志
#log_slow_queries = /path/to/slow_queries
#long_query_time = 1
4. mysql常用操作

mysql  远程备份和恢复

远程登录mysql

116.211.105.59  先授权

mysql -uroot -paming

mysql> grant all  on  *.* to ‘root‘@‘58.53.94.11‘ identified by ‘123aaa‘;

mysql> select user();

+----------------+
| user()         |
+----------------+
| [email protected] |
+----------------+
1 row in set (0.00 sec)

mysql>  select database();

mysql>  select database();

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

| database() |

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

| NULL       |

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

1 row in set (0.00 sec)

mysql> grant all on discuz.* to ‘user1‘@‘192.168.10.*‘ identified by ‘123aaa‘;

discuz

user1

123aaa

mysql> flush  privileges;

mysql> show  processlist;

58.53.94.11  登录

[[email protected] ~]# mysql  -uroot  -h116.211.105.59 -P3306 -p123aaa

[[email protected] /]# mysqldump --host 111.47.123.72  -uroot  -paminglinux   discuz > /data/discuz.sql
mysqldump: Got error: 1130: Host ‘111.47.123.67‘ is not allowed to connect to this MySQL server when trying to connect
[[email protected] /]# mysqldump --host 111.47.123.72  -uroot  -paminglinux   discuz > /data/discuz.sql
[[email protected]uhan-67 /]# cd /data
[[email protected] data]# ll
total 2308
-rw-r--r-- 1 root root 2361322 Aug  3 22:27 discuz.sql

查看都有哪些库  show databases;
查看某个库的表 use db; show tables;
查看表的字段 desc tb;
查看建表语句 show create table tb;
当前是哪个用户  select user();
当前库 select database();
创建库 create database db1;
创建表 create table t1 (`id` int(4), `name` char(40));  
查看数据库版本 select version();
查看mysql状态 show status;
修改mysql参数 show variables like ‘max_connect%‘; set global max_connect_errors = 1000;
查看mysql队列 show processlist;
创建普通用户并授权 grant all on *.* to user1 identified by ‘123456‘;
grant all on db1.* to ‘user2‘@‘10.0.2.100‘ identified by ‘111222‘;
grant all on db1.* to ‘user3‘@‘%‘ identified by ‘231222‘;insert into tb1 (id,name) values(1,‘aming‘);
更改密码 UPDATE mysql.user SET password=PASSWORD("newpwd") WHERE user=‘username‘ ;   
查询 select count(*) from mysql.user; select * from mysql.db; select * from mysql.db where host like ‘10.0.%‘;
插入 update db1.t1 set name=‘aaa‘ where id=1;  
清空表 truncate table db1.t1;
删除表 drop table db1.t1;
删除数据库 drop database db1;
修复表 repair table tb1 [use frm];
5. mysql备份与恢复

[[email protected] ~]# find  /  -name  mysqldump
/usr/local/mysql/bin/mysqldump

[[email protected] mysql]# mysqldump   -uroot -paming  discuz > /data/discuz.sql/1.sql

linux  mysql 清除密码

1、以root登录:mysql -u root -p
2、mysql>use mysql;
3、mysql>update user set password=‘‘ where user=‘root‘;

备份 mysqldump -uroot -p db >1.sql
恢复 mysql -uroot -p db <1.sql  
只备份一个表  mysqldump -uroot -p db tb1 > 2.sql
备份时指定字符集 mysqldump -uroot -p --default-character-set=utf8  db >1.sql
恢复也指定字符集 mysql -uroot -p --default-character-set=utf8  db  < 1.sql
扩展知识:
myisam 和innodb引擎对比  http://www.pureweber.com/article/myisam-vs-innodb/
一台mysql服务器启动多个端口 http://www.lishiming.net/thread-63-1-1.html
SQL语句教程  http://blog.51cto.com/zt/206
sql教程pdf文档   http://class.ccshu.net/00864091/ ... %95%99%E7%A8%8B.pdf
什么是事务?事务的特性有哪些?  http://blog.csdn.net/yenange/article/details/7556094
mysql常用引擎  http://c.biancheng.net/cpp/html/1465.html
批量更改表的引擎    http://www.361way.com/change-mysql-engine/1729.html
mysql 二进制日志binlog的模式   http://lihuipeng.blog.51cto.com/3064864/833017
mysql根据binlog恢复指定时间段的数据   http://www.centoscn.com/mysql/2015/0204/4630.html
mysql字符集调整  http://xjsunjie.blog.51cto.com/999372/1355013
使用xtrabackup备份innodb引擎的数据库  http://www.aminglinux.com/bbs/thread-956-1-1.html
innobackupex 备份 Xtrabackup 增量备份 http://www.aminglinux.com/bbs/thread-1012-1-1.html

时间: 2024-08-18 11:34:10

2015-05-08LAMP第四部分mysql操作的相关文章

LAMP第四部分mysql操作

1. 忘记root密码编辑mysql主配置文件 my.cnf 在[mysqld]字段下添加参数  skip-grant  ,重启数据库服务,这样就可以进入数据库不用授权了 mysql -uroot ,修改相应用户密码 use mysql; update user set password=password('your password') where user='root';flush privileges;  最后修改/etc/my.cnf 去掉 skip-grant , 重启mysql服务2

Python/MySQL(四、MySQL数据库操作)

Python/MySQL(四.MySQL数据库操作) 一.数据库条件语句: 1 case when id>9 then ture else false 二.三元运算: 1 if(isnull(xx)0,1) 三.上下连表: select id,name from ta1 union 天然去重(检测上边的表和下边的表行内完全一样就只显示一行内容) select num,sname from tb2 ========================================== select

边记边学PHP-(十四)MySql数据库基础操作1

提到数据库,相信都不陌生.比较常见的是SQL Server . Oracle.Access.SQLite等等.当然还有PHP的黄金搭档,MySql数据库.当然我所写的都是MySql的一些基础,我还没有深入的学习这个数据库.深入学习还需要一段时间.但是现在学的基础基本满足我现在的学习需要. 一.MySQL简介 1.MySQL是什么 MySQL是一款安全.跨平台.高效的,并与PHP.Java等主流编程语言紧密结合的数据库系统.该数据库系统是由瑞典的MySQL AB公司开发.发布并支持,由MySQL初

Python之MySQL操作及Paramiko模块操作

一.MySQL简介 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下公司.MySQL 最流行的关系型数据库管理系统,在 WEB 应用方面MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一. MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性. MySQL所使用的 SQL

Linux下 C语言 Mysql操作和字符集设置

一.C语言 Mysql操作 首先安转libmysql库. # sudo apt-get install libmysql++-dev 把MySQL的库拷贝到公共库中. # sudo cp -ri /usr/lib/mysql/* /usr/lib/ 配置MySQL库. # mysql_config --cflags --libs 二.创建数据库和表 启动终端,输入以下命令,进入mysql. # mysql -u username -p 创建一个数据库. mysql > create databa

第四章 MySQL高级查询(二)

第四章 MySQL高级查询(二) 一.EXISTS子查询 在执行create 或drop语句之前,可以使用exists语句判断该数据库对像是否存在,返回值是true或false.除此之外,exists也可以作为where语句的子查询,语法如下: SELECT --FROM 表名 WHERE  EXISTS(子查询): EXISTS关键字后面的参数是一个任意的子查询,如果该子查询没有返回行,则EXISTS子查询的结果为true,此时再执行外层查询语句.如果EXISTS子查询结果为false,此时外

Ubuntu 中Mysql 操作

一.mysql服务操作 0.查看数据库版本 sql-> status; 1.net start mysql //启动mysql服务 2.net stop mysql //停止mysql服务 3.mysql -h主机地址 -u用户名 -p用户密码 //进入mysql数据库 4.quit //退出mysql操作 5.mysqladmin -u用户名 -p旧密码 password 新密码 //更改密码 6.grant select on 数据库.* to 用户名@登录主机 identified by

mysql操作SQL语句

二.数据库操作SQL语句1.显示服务器上当前存在什么数据库SHOW DATABASES; 2.创建名称为rewin的数据库CREATE DATABASE rewin; 3.删除名称为rewin的数据库DROP DATABASE rewin; 4.选择rewin数据库USE rewin; 三.表操作SQL语句(登录之后必须用以上的USE命令选择一个数据库,再进行表操作)1.显示当前数据库中存在什么表SHOW TABLES; 2.创建数据库表zhangyan:在mysql>后粘贴以下SQL语句,存储

php 的mysql操作类

亲自测试,网上其他版本没法用,有很多错误,这是本人亲自测试用的,绝对增删改查都可以. <?php /** * Created by Netbeans. * User: Lugo * Date: 16-7-14 * Version: 1.0.0 * Time: 上午10:50 */ class MysqlHelper { const HOST="localhost"; const DATABASE = "demo"; const ENCODING = "