Chinaunix首页 | 论坛 | 博客
  • 博客访问: 201499
  • 博文数量: 87
  • 博客积分: 10
  • 博客等级: 民兵
  • 技术积分: 840
  • 用 户 组: 普通用户
  • 注册时间: 2012-07-18 21:12
文章分类

全部博文(87)

文章存档

2014年(86)

我的朋友

分类: Mysql/postgreSQL

2014-06-23 16:51:38

每个Mysql的服务都可为独立的,所以它都调用一个my.cnf中各自不同的启动选项就是下文中将提到的GNR,使用不同的端口,生成各自的套接文件,服务的数据库都是独立的。
所需要的准备有:(其实都是现成的)
1.
只需要安装一套mysql的服务器软件就ok
2.
需要有
mysqld_multi
3.
需要修改/etc/my.cnf

 

1 cd /etc/

2 sudo vi my.cnf

   修改my.cnf文件

   1 填写下面配置 :

   [mysqld_multi]

    mysqld = /usr/local/mysql/bin/mysqld_safe

    mysqladmin = /usr/local/mysql/bin/mysqladmin

    user = multi

    password = multips

    log = /usr/local/mysql/etc/mysqld_multi.log

[mysqld1]

 user       = mysql

 port       = 3307

 socket     = /tmp/mysql.sock2

 datadir    = /usr/local/mysql/var2

 pid-file   = /usr/local/mysql/var2/hostname.pid2

 log-err    = /usr/local/log/log-3307.err

 log        = /usr/local/log

language   = /usr/local/mysql/share/mysql/english

 #skip-locking

 character_set_server = utf8

 

 [mysqld2]

 user       = mysql

 port       = 3308

 socket     = /tmp/mysql.sock3

 datadir    =

 pid-file   = /usr/local/mysql/var3/hostname.pid3

 log-err    = /usr/local/log/log-3308.err

 log        = /usr/local/log

language   = /usr/local/mysql/share/mysql/english

 

 #skip-locking

 character_set_server = utf8

2 将以下内容注释掉

  # The following options will be passed to all MySQL clients

# [client]

# password      = your_password

# port          = 3306

# socket                = /tmp/mysql.sock

 

# Here follows entries for some specific programs

 

# The MySQL server

# [mysqld]

# port          = 3306

# socket                = /tmp/mysql.sock

# skip-locking

# key_buffer_size = 16M

# max_allowed_packet = 1M

# table_open_cache = 64

# sort_buffer_size = 512K

# net_buffer_length = 8K

# read_buffer_size = 256K

# read_rnd_buffer_size = 512K

# myisam_sort_buffer_size = 8M

3 /usr/local/mysql/ 目录下创建 var2 var3 两个目录

1         cd  /usr/local/mysql/

2         mkdir var2

3         mkdir var3

 

4 查看mysqld_multi文件

1  cd  /usr/local/mysql/bin

2 ls mysqld_multi

   2  more mysqld_multi

 

启动实例

sudo /usr/local/mysql/bin/mysqld_multi  --defaults-extra-file=/etc/my.cnf start 1

sudo /usr/local/mysql/bin/mysqld_multi  --defaults-extra-file=/etc/my.cnf start 2

查看实例是否启动

sudo /usr/local/mysql/bin/mysqld_multi  --defaults-extra-file=/etc/my.cnf report 1

 

停止实例:

sudo /usr/local/mysql/bin/mysqld_multi  --defaults-extra-file=/etc/my.cnf stop 1

sudo /usr/local/mysql/bin/mysqld_multi  --defaults-extra-file=/etc/my.cnf stop 2

 

 

 

:使用方法:# mysqld_multi [options] {start|stop|report} [GNR[,GNR]…]

sudo /usr/bin/mysqld_multi --config-file=/home/client/conf/my.cnf start 1-n 启动n个实例

start,stopreport是指你想到执行的操作。你可以在单独的服务或是多服务上指定一个操作,区别于选项后面的GNR列表。如果没有指定GNR列表,那么mysqld_multi将在所有的服务中根据选项文件进行操作。

每一个GNR的值是组的序列号或是一个组的序列号范围。此项的值必须是组名字最后的数字,比如说如果组名为mysqld17,那么此项的值则为 17.如果指定一个范围,使用”-”(破折号)来连接二个数字。如GNR的值为10-13,则指组mysqld10到组mysqld13。多个组或是组范 围可以在命令行中指定,使用”,”(逗号)隔开。不能有空白的字符(如空格或tab),在空白字符后面的参数将会被忽略

连接进入指定的mysql服务器  进入不同实例

mysql --socket=/tmp/mysql.sock3  -uroot

数据库表创建略

权限设置

 1 use mysql ;

 2 insert into mysql.user(Host,User,Password) values(‘192.168.103.88’,’admin’,’1234567’);

 3 identified by ‘1234567’;

 4 flush privileges;

 

grant 权限1,权限2,…权限n on 数据库名称.表名称 to 用户名@用户地址 identified by ‘连接口令’;
权限1,权限2,…权限n代表select,insert,update,delete,create,drop,index,alter,grant,references,

reload,shutdown,process,file14个权限。
当权限1,权限2,…权限nall privileges或者all代替,表示赋予用户全部权限。
当数据库名称.表名称被*.*代替,表示赋予用户操作服务器上所有数据库所有表的权限。
用户地址可以是localhost,也可以是ip地址、机器名字、域名。也可以用’%'表示从任何地址连接。连接口令不能为空,否则创建失败。

 

 GRANT RELOAD,PROCESS ON *.* TO 'admin'@'localhost';
该账户只用于从本机连接。授予了RELOADPROCESS管理权限。这些权限允许admin用户执行mysqladmin reloadmysqladmin refreshmysqladmin flush-xxx命令,以及mysqladmin processlist。未授予访问数据库的权限。你可以通过GRANT语句添加此类权限。


mysql
> GRANT USAGE ON *.* TO 'dummy'@'localhost';
   
一个账户有用户名dummy,没有密码。该账户只用于从本机连接。未授予权限。通过GRANT语句中的USAGE权限,你可以创建账户而不授予任何权限。它可以将所有全局权限设为'N'。假定你将在以后将具体权限授予该账户。

 

取消某些用户权限

 

192.168.103.88 上远程连接

命令:mysql –uadmin –P3307 –p –h192.168.103.212

      mysql –uadmin –P3308 –p –h192.168.103.212

即可进入查看两个不同实例

 

mysql -uroot  -S/home/client/data/mysql_3307/mysqld.sock

 

 

阅读(1080) | 评论(0) | 转发(0) |
0

上一篇:innodb引擎的安装

下一篇:my.cnf初始化配置

给主人留下些什么吧!~~