同一台Ubuntu 启动多个mysql

前端之家收集整理的这篇文章主要介绍了同一台Ubuntu 启动多个mysql前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

ubuntu 安装@R_404_198@ 启动多个端口@R_404_198@服务

apt-get update
apt-get install @R_404_198@-server

如果update失败 1.检查是否不能域名解析。2.看看源是否有问题 具体自行百度吧。

这种方法默认的配置文件/etc/@R_404_198@/my.cnf
这样安装的默认端口上3306

下面我们再启动一个3307端口的@R_404_198@ 服务,实现一台机器上同时运行多个数据库实例

1, 创建新的@R_404_198@实例数据存储目录,我这里创建2个 。你想创建几个就创建几个

mkdir -p /var/lib/1_@R_404_198@
mkdir -p /var/lib/2_@R_404_198@

如果权限不够 记得修改一下一下
chown -R @R_404_198@.@R_404_198@ 1_@R_404_198@  2_@R_404_198@

2, 把my.cnf配置文件复制一份,开几个端口要复制几份。

cp /etc/@R_404_198@/my.cnf 3307.cnf
cp /etc/@R_404_198@/my.cnf 3302.cnf

3,修改3307.cnf文件修改内容如下,你也可以根据自己情况修改
我只改了 3307 。3302 的自己修改

[client]
port            = 3307
socket          = /var/run/@R_404_198@d1/@R_404_198@d.sock
[@R_404_198@d_safe]
socket          = /var/lib/1_@R_404_198@/@R_404_198@d.sock
#nice = 0

pid-file        = /var/lib/1_@R_404_198@/@R_404_198@d.pid
[@R_404_198@d]

user            = @R_404_198@
socket          = /var/lib/1_@R_404_198@/@R_404_198@d.sock
port            = 3307
basedir         = /usr
datadir         = /var/lib/1_@R_404_198@
tmpdir          = /tmp

4,初始化数据库:

@R_404_198@_install_db  --defaults-file=/etc/@R_404_198@/3307.cnf  --basedir=/usr/  --datadir=/var/lib/1_@R_404_198@  --user=@R_404_198@

@R_404_198@_install_db  --defaults-file=/etc/@R_404_198@/3302.cnf  --basedir=/usr/  --datadir=/var/lib/2_@R_404_198@  --user=@R_404_198@

如果不是默认安装的请注意安装的路径 如果不知道
查找一下 @R_404_198@_install_db

find / -name @R_404_198@_install_db

找到后 在其目录下执行

./@R_404_198@_install_db  --defaults-file=/etc/@R_404_198@/3307.cnf  --basedir=/usr/  --datadir=/var/lib/1_@R_404_198@  --user=@R_404_198@

注意再执行上面的命令的时候出错请看第8步,没错误恭喜你。继续往下看
5,启动@R_404_198@,要指定.cnf文件启动

@R_404_198@d_safe --defaults-file=/etc/@R_404_198@/3307.cnf --user=@R_404_198@ &

@R_404_198@d_safe --defaults-file=/etc/@R_404_198@/3302.cnf --user=@R_404_198@ &

看一下我们的成果 如下

root@ubuntu84:/var/lib# ps -axu|grep @R_404_198@
root     20121  0.0  0.0   4448  1608 pts/2    S    21:26   0:00 /bin/sh /usr/bin/@R_404_198@d_safe --defaults-file=/etc/@R_404_198@/3302.cnf --user=@R_404_198@
@R_404_198@    20464  0.0  0.6 614620 54204 pts/2    Sl   21:26   0:05 /usr/sbin/@R_404_198@d --defaults-file=/etc/@R_404_198@/3302.cnf --basedir=/usr --datadir=/var/lib/2_@R_404_198@ --plugin-dir=/usr/lib/@R_404_198@/plugin --user=@R_404_198@ --log-error=/var/lib/2_@R_404_198@/error.log --pid-file=/var/lib/2_@R_404_198@/@R_404_198@d.pid --socket=/var/lib/2_@R_404_198@/@R_404_198@d.sock --port=3302
root     20486  0.0  0.0   4448  1600 pts/2    S    21:26   0:00 /bin/sh /usr/bin/@R_404_198@d_safe --defaults-file=/etc/@R_404_198@/3303.cnf --user=@R_404_198@
@R_404_198@    20829  0.0  0.6 483156 53776 pts/2    Sl   21:26   0:04 /usr/sbin/@R_404_198@d --defaults-file=/etc/@R_404_198@/3303.cnf --basedir=/usr --datadir=/var/lib/3_@R_404_198@ --plugin-dir=/usr/lib/@R_404_198@/plugin --user=@R_404_198@ --log-error=/var/lib/3_@R_404_198@/error.log --pid-file=/var/lib/3_@R_404_198@/@R_404_198@d.pid --socket=/var/lib/3_@R_404_198@/@R_404_198@d.sock --port=3303
root     20851  0.0  0.0   4448  1612 pts/2    S    21:26   0:00 /bin/sh /usr/bin/@R_404_198@d_safe --defaults-file=/etc/@R_404_198@/3304.cnf --user=@R_404_198@
@R_404_198@    21195  0.0  0.6 483156 52544 pts/2    Sl   21:26   0:05 /usr/sbin/@R_404_198@d --defaults-file=/etc/@R_404_198@/3304.cnf --basedir=/usr --datadir=/var/lib/4_@R_404_198@ --plugin-dir=/usr/lib/@R_404_198@/plugin --user=@R_404_198@ --log-error=/var/lib/4_@R_404_198@/error.log --pid-file=/var/lib/4_@R_404_198@/@R_404_198@d.pid --socket=/var/lib/4_@R_404_198@/@R_404_198@d.sock --port=3304
root     21629  0.0  0.0 101444  4564 pts/2    S+   21:49   0:00 @R_404_198@ -uroot -p -S /var/lib/2_@R_404_198@/@R_404_198@d.sock -P 3304
root     24635  0.1  0.0   4448  1724 pts/5    S    23:46   0:00 /bin/sh /usr/bin/@R_404_198@d_safe --defaults-file=/etc/@R_404_198@/3307.cnf --user=@R_404_198@
@R_404_198@    24978  0.2  0.5 418756 46956 pts/5    Sl   23:46   0:00 /usr/sbin/@R_404_198@d --defaults-file=/etc/@R_404_198@/3307.cnf --basedir=/usr --datadir=/var/lib/1_@R_404_198@ --plugin-dir=/usr/lib/@R_404_198@/plugin --user=@R_404_198@ --log-error=/var/lib/1_@R_404_198@/error.log --pid-file=/var/lib/1_@R_404_198@/@R_404_198@d.pid --socket=/var/lib/1_@R_404_198@/@R_404_198@d.sock --port=3307
root     24999  0.0  0.0  10468  2244 pts/5    S+   23:47   0:00 grep --color=auto @R_404_198@
root     29058  0.0  0.0   4448  1732 ?        S    01:48   0:00 /bin/sh /usr/bin/@R_404_198@d_safe --defaults-file=/etc/@R_404_198@/my.cnf --user=@R_404_198@
@R_404_198@    29425  0.0  0.6 484496 52180 ?        Sl   01:48   0:49 /usr/sbin/@R_404_198@d --defaults-file=/etc/@R_404_198@/my.cnf --basedir=/usr --datadir=/var/lib/@R_404_198@ --plugin-dir=/usr/lib/@R_404_198@/plugin --user=@R_404_198@ --log-error=/var/log/@R_404_198@/error.log --pid-file=/var/run/@R_404_198@d/@R_404_198@d.pid --socket=/var/run/@R_404_198@d/@R_404_198@d.sock --port=3306

6,停止@R_404_198@,需要指定对应的sock文件

@R_404_198@admin -uroot -S /var/lib/1_@R_404_198@/@R_404_198@d.sock shutdown

7,登陆3307端口的@R_404_198@:

@R_404_198@ -S /var/lib/1_@R_404_198@/@R_404_198@d.sock  -P 3307
远程连接加上ip即可
@R_404_198@ -uroot -p -S /var/lib/1_@R_404_198@/@R_404_198@d.sock -hlocalhost  -P 3307

8,我安装的时候出现如下类似的错误,找了好多资料。资料地址

2014-12-11 16:22:57 26309 [Warning] Can't create test file /data/@R_404_198@/server2.lower-test
2014-12-11 16:22:57 26309 [Warning] Can't create test file /data/@R_404_198@/server2.lower-test
2014-12-11 16:22:57 26309 [Warning] Buffered warning: Changed limits: max_open_files: 1024 (requested 5000)

2014-12-11 16:22:57 26309 [Warning] Buffered warning: Changed limits: table_cache: 431 (requested 2000)

2014-12-11 16:22:57 26309 [Note] Plugin 'FEDERATED' is disabled.
^G/usr/sbin/@R_404_198@d: Can't find file: './@R_404_198@/plugin.frm' (errno: 13 - Permission denied)
2014-12-11 16:22:57 26309 [ERROR] Can't open the @R_404_198@.plugin table. Please run @R_404_198@_upgrade to create it.

具体原因看转载
编辑

vim /etc/apparmor.d/usr.sbin.@R_404_198@d

添加如下

/var/lib/1_@R_404_198@/ r,/var/lib/2_@R_404_198@/ r,/var/lib/1_@R_404_198@/** rwk,/var/lib/2_@R_404_198@/** rwk,

保存 重启

service apparmor restart

截止到这里 再回去重新执行第 4步

以下内容是转载
原文:http://www.huoxingfan.com/834.html

我想,你一定是从搜索引擎搜索这个标题进来的!你一定是想改变@R_404_198@默认安装的数据目录!

你已经修改了my.cnf中的datadir的值

你已经chown和chmod了数次新数据目录或者其父路径的属主和权限

你无数次地试图service @R_404_198@ start,或者 /etc/init.d/@R_404_198@ start,以及@R_404_198@_install_db!

恭喜你看见这篇文章,我在被系统坑了几个小时之后,找到了解决方法

这个原因有二,其中任意的一个原因都会造成你被系统告知这个warning。如果你不是一个专业的linux系统安全工程师,或者你只是个PHP程序

员,并没有对系统安全有深入的研究,你就不会太容易找到它的答案。

第一,selinux,记得当年念书时,字符界面安装redhat(很古老的操作系统么。。。)的时候,有这么一个选项,通常大家都听取前辈的建议,改

变默认值以不安装它。但如果你恰好要操作的这台机器开着selinux,它确实能够使你的@R_404_198@无法在新目标位置进行@R_404_198@_install_db的操作,并

爆出标题所示的警告。一个简单的解决办法是使用命令暂时关闭selinux,以便让你的操作可以继续下去

setenforce 0

但最好使用一个永久方法,以便在重启后继续不要这货。

修改/etc/selinux/config文件中设置SELINUX=disabled ,然后重启或等待下次重启。(我用的是Azure的Ubuntu14.04,没有这个目录,OK,那就省事了)

第二,apparmor,这个坑爹货和selinux一样的坑爹,它也对@R_404_198@所能使用的目录权限做了限制

在 /etc/apparmor.d/usr.sbin.@R_404_198@d 这个文件中,有这两行,规定了@R_404_198@使用的数据文件路径权限

/var/lib/@R_404_198@/ r,

/var/lib/@R_404_198@/** rwk,

你一定看到了,/var/lib/@R_404_198@/就是之前@R_404_198@安装的数据文件默认路径,apparmor控制这里@R_404_198@d可以使用的目录的权限

我想把数据文件移动到/data/@R_404_198@下,那么为了使@R_404_198@d可以使用/data/@R_404_198@这个目录,照上面那两条,增加下面这两条就可以了

/data/@R_404_198@/ r,

/data/@R_404_198@/** rwk,

重启: sudo service apparmor restart

之后,就可以顺利地干你想干的事儿了。

猜你在找的Ubuntu相关文章