hgtvf 发表于 2015-8-20 12:37:55

LAMP第四部分 mysql相关

  
1. 忘记root密码
http://www.lishiming.net/thread-252-1-1.html
  进入mysql
which mysql
/usr/local/mysql/bin/mysql    没有设置密码之前可以这样子打开mysql
  登录/usr/local/mysql/bin/mysql -uroot -p123456
  如果忘记root密码或其他用户密码,不要急,按下面操作即可。
1. 编辑mysql主配置文件 my.cnf
vim /etc/my.cnf
在字段下添加参数
skip-grant不需要授权
2. 重启数据库服务
service mysqld restart
3. 这样就可以进入数据库不用授权了
mysql -uroot
  4. 修改相应用户密码
use mysql;
update user set password=password('aminglinux') where user='root';
  flush privileges;
5.修改/etc/my.cnf 去掉 skip-grant , 重启mysql服务
重启
/etc/init.d/mysqld restart
  登录/usr/local/mysql/bin/mysql -uroot -paminglinux
  看user表
use mysql;
select * from user\G;
  
=============
2.
skip-name-resolve(禁止解析域名)
skip-innodb (是mysql的引擎)
  vim /etc/my.cnf在配置里面加上上面两个,然后在/data/mysql 有几个文件会消失
  3. 配置慢查询日志
#log_slow_queries = /path/to/slow_queries
#long_query_time = 1
  查看配置文件,默认在下面文件找
vim /etc/init.d/mysqld进去查找conf=/etc/my.cnf
  4. innodb与myisam    常用mysql引擎,总结一下
http://www.lishiming.net/thread-97-1-1.html
  5. mysql配置调优
http://www.lishiming.net/thread-5758-1-1.html
  6. mysql常用操作
mysql -uroot -paminglinux
或者 mysql -uroot -h127.0.0.1 -paminglinux
mysql -uroot -h192.168.11.190 -P3306 -paminglinux
  mysql -uroot -S /tmp/mysql.sock -paminglinux 可以用sock去通讯,只可以在本地用
  查看都有哪些库show databases;
调用系统的命令 system ls
查看某个库的表 use db; show tables;
查看表的字段结构 desc tb;
查看建表语句 show create table tb\G;\G显示比较有规则一点
  当前是哪个用户select user();
当前库 select database();
创建库 create database db1;    mysql -uroot -paminglinux -e "create database discuz2"
创建表 create table t1 (`id` int(4), `name` char(40));
insert into t1 values(1, 'aming');
insert into t1 (`id`) values(2); 插入单个字段
select * from t1;
  查看数据库版本 select version();
查看mysql状态 show status;
修改mysql参数 show variables like 'max_connect%'; set global max_connect_errors = 1000;
查看mysql队列 show processlist; ===============
  grant all on *.* to 'root'@'10.0.2.100' identified by '123456';   *.*代表所有的库和表都授权
  创建普通用户并授权 grant all on *.* to user1 identified by '123456';
grant all on db1.* to 'user2'@'10.0.2.100' identified by '111222';
flush privileges;刷新一下磁盘
grant all on db1.* to 'user3'@'%' identified by '231222';
  更改密码 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;
删除表字段 delete from t1 where id=3;
清空表的数据 truncate table db1.t1;
删除表 drop table db1.t1;
删除数据库 drop database db1;
修复表 repair table tb1 ;
show processlist ; 看看任务都有哪些show full processlist ;
show variables like '%timeout%';
  在配置文件里面加上,两个必须同时用从可以
interactive_timeout = 10
wait_timeout=10
  如果更改mysql的配置文件my.conf 就需要重启mysql,现在不需要重启就可以生效的方法(不是全局,全局需要写入到配置文件里面)
set global interactive_timeout = 10;
  把重启的服务放到系统的环境 /etc/rc.local 下面,就可以开机自动生效=========
/usr/local/apache2/bin/apachectl start
  查看帖子内容的表
select * from pre_forum_post\G;
  搜索帖子
select * from pre_forum_post where subject like '%sjs%';
  
7. mysql备份与恢复
备份数据库 mysqldump -uroot -paminglinux db >1.sql
恢复 mysql -uroot -paminglinux db <1.sql
  
  mysql -uroot -paminglinux -e "create database discuz2"
  
备份时指定字符集 mysqldump -uroot -paminglinux --default-character-set=utf8db >1.sql
只备份表结构mysqldump -uroot -paminglinux --default-character-set=utf8 -d db >1.sql
恢复指定字符集 mysql -uroot -paminglinux --default-character-set=utf8db< 1.sql
只备份一个表mysqldump -uroot -paminglinux db tb1 > 2.sql
  8. 一台mysql服务器启动多个端口
http://www.lishiming.net/thread-63-1-1.html
  http://www.aminglinux.com/bbs/forum.php?mod=viewthread&tid=6509&highlight=phpmyadmin
  安装mysqlamin 管理平台
  
页: [1]
查看完整版本: LAMP第四部分 mysql相关