常用到的mysql命令笔记
mysql设置密码和修改密码:
/usr/local/mysql/bin/mysqladmin -uroot password 123456 第一次设密码。
mysqladmin -uroot -p password mypasswd 修改密码
输入这个命令后,需要输入root的原密码,然后root的密码将改为mypasswd。
就是mysql5导出的有default-charact的设置,mysql4不支持,需要加skip-opt参数,如:
mysqldump -uroot -p --default-character-set=gbk -skip-opt databse > hx.sql
一般的数据导出用
mysqldump -uroot -p密码 database > database.sql //导出数据。
mysqldump -uroot -p密码 --opt 数据名 表名 > /home/2009_5_29.sql //备份数据中的表
mysqldump -uroot -p密码 --databases 数据名1 数据名2 > /home/2009_5_29.sql //备份都个数据库
mysql -u root -p book <book.sql 或直接 source book.sql //其中book为数据库
drop database 数据名; //删除数据
drop table 表名; //删除表
下面对一些没用的用户删除,
先查看 mysql 默认有那些用户。
mysql 的用户,还有一些信息 是放在 mysql 数据库的。
mysql> use mysql;
Database changed
mysql> show tables;
可以看到 里面的表。。。其中 user 表,就是存放用户信息的表。
> select * from user; 可以查看里面信息,
由于信息太多,我们选择其中几个列
mysql> select Host,User,Password from user;
mysql> delete from user where User='';
Query OK, 2 rows affected (0.01 sec)
再查看一下。
mysql> select Host,User,Password from user;
空用户已经被删除
如何添加其他用户问题。。。设置到安全问题
1, 添加一个用户17rumen密码是123 ,可以在任何主机登陆,并且对所有数据库
可以进行查询,插入,修改,删除的操作。
mysql> grant select,insert,update,delete on *.* to '17rumen'@'%' identified by '123';
Query OK, 0 rows affected (0.00 sec)
这样的用户,就可以在远程进行登陆,要加入 主机的ip地址才可以
]# mysql -h 192.168.1.118 -u17rumen -p123
登陆上去了
=====
2, 添加一个用户17rumen2密码是123,只能在 localhost 本机上登陆。
并且只能对 test 数据库进行 查询,插入,修改,删除的操作。
不能对别的数据库进行操作,这个我觉得非常重要。
mysql> grant select,insert,updat
相关文档:
很多朋友都有过这样的经历,将mysql升级到4.1(或以上)版本后,旧的程序从数据库读出来的都变成乱码了.这个问题网上很多这方面的讨论,其实手册上已经有关于这方面的详细说明,
以下内容摘自mysql手册,
产生这个问题的原因是:
MySQL 4.1.x开始支持以下这些事情
· 使 ......
1.连接MySQL数据库
echo on
cd c:\Program Files\MySQL\MySQL Server 5.2\bin
mysql -uroot -ppass
2、显示数据库列表。
show databases;
3、显示库中的数据表:
use mysql; //打开库,
show tables;
4、显示数据表的结构:
describe 表名;
5、建库:
create database 库名;
6、建表:
use 库名;
creat ......
1. 在/etc/my.cnf中加入一下内容
[mysqld_dev]
socket=/tmp/mysql.sock
port=3307
pid-file=/var/run/mysqld/mysqld_dev.pid
datadir=/var/lib/mysql_dev
log=/var/log/mysqld_dev.log
log-error=/var/log/mysqld_dev.err.log
user=mysql
2. 根据以上内容创建目录和文件
mkdir /var/lib/mysqld_dev
chown mys ......
昨天,我突然想把一个数据库里的每个表,以及每个表的非空总纪录数存在另一个表里面。
首先,创建了一个存放数据的表:
create table tables
(
name varchar(50),
number int
);
insert into tables select table_name from information_schema.tables where table_shema = 'test';
但是不知道有没有方法,将非空的 ......