1、wget http://cdn.mysql.com/Downloads/MySQL-5.1/mysql-5.1.73-linux-x86_64-glibc23.tar.gz
http://cdn.mysql.com/archives/mysql-5.1/mysql-5.1.66-linux-x86_64-glibc23.tar.gz
2、解压之后拷贝到/home/users/xululu01/tools下,重命名为mysql,并且将/home/users/xululu01/tools/mysql/bin添加到.bashrc中PATH
export PATH/home/users/xululu01/tools/mysql/bin:$PATH,然后source .bashrc。此时mysql client可用
3、配置mysql sever:
/home/users/xululu01/tools/mysql/support-files下的my-medium.cnf拷贝到/home/users/xululu01/tools/mysql目录下,并重命名为my.cnf,在my.cnf中的[mysqld]行下添加: basedir =/home/users/xululu01/tools/mysql
datadir =/home/users/xululu01/tools/mysql/data
3、执行./scripts/mysql_install_db --defaults-file=./my.cnf --user=xululu01
4、将mysqld服务启动:./bin/mysqld_safe --defaults-file=./my.cnf --user=xululu01 &
然后执行mysql -uroot -h127.0.0.1 -P3306 即可连接本地数据库.
设置别人连接我的数据库
查看:select user,host,password from mysql.user;
user和host相当于一个用户
给所有的ip地址%所有数据库所有表*.*的所有权限all,密码为test:grant all on . to root@’%’ identified by ‘test’; //相当于update user表且flush到内存,使更改生效 不包括本机
grant all on . to root@‘localhost’ identified by ‘test’; //自己
给某个ip地址即某个机器所有数据库所有表*.*的所有权限all,没有密码:grant all on . to root@‘10.99.22.41’; //root用户在这个ip上的权限
使权限生效:flush privileges;
看有哪些权限:show privileges;
grant create on . to root@’%’; 给某个权限 //给create(包括表及数据库)权限
revoke all on . from root@’%’; 取消权限但是不删除用户 grant命令用户不存在会创建用户再赋予权限
create user xll; 默认为% //刚刚创建的用户没有任何权限,需要自己设置
create user xll@‘10.99.22.41’; 针对某个ip的用户
也可以直接往mysql.user表中插入记录,insert或者update,但是需要flush一下,才能生效。
Use mysql 中 show tables 中这几个表 db、tables_priv、columns_priv 是控制分别的权限的。
先看高级权限再看低级权限,比如user表中的是对所有数据库的权限控制,这个表有了,低级表中为空,也是可以访问的。user表中未N,这个时候要看db表,是否有权限。