Ubuntu 14.04下 运行多个MySQL服务器
来源:互联网 发布:北塔软件福利待遇 编辑:程序博客网 时间:2024/05/22 08:04
Ubuntu 14.04下 运行多个MySQL服务器
一、 系统环境
Ubuntu 14.04 64位
Mysql5.7.17 server 64位 编译安装完毕
Mysql 安装路径 /usr/local/mysql
Mysql 数据路径 /home/MysqlData
Mysql命令添加到环境变量/etc/profile中:export PATH=/usr/local/mysql/bin:$PATH
在Ubuntu 14.04上 安装三个Mysql服务实例
二、 停止Mysql服务
首先要停掉Mysql服务。
service mysql stop
将mysql服务从开机启动中移除,防止旧的Mysql服务开机占用3306端口。但不要从系统服务中移除mysql服务。
sudo update-rc.d mysql remove
三、 初始化数据库目录并安装三个Mysql服务
mkdir -p /home/MysqlData1mkdir -p /home/MysqlData2mkdir -p /home/MysqlData3cd /usr/local/mysql/./scripts/mysql_install_db --datadir=/home/MysqlData1 --user=mysql./scripts/mysql_install_db --datadir=/home/MysqlData2 --user=mysql./scripts/mysql_install_db --datadir=/home/MysqlData3 --user=mysql
四、 从MySQL源码中把mysqld_multi.server加入到系统服务中
cd /usr/local/mysql/support-files/cp ./mysqld_multi.serve /etc/init.d/mysqld_multiupdate-rc.d mysqld_multi defaultsupdate-rc.d mysqld_multi start 20 2 3 4 5 . stop 20 0 1 6 .
五、 修改数据库配置文件/etc/my.cnf
[mysqld_multi]mysqld = /usr/local/mysql/bin/mysqld_safemysqladmin = /usr/local/mysql/bin/mysqladmin#user = root#password = 123456[mysqld1]port=3306basedir=/usr/local/mysqldatadir=/home/MysqlData1socket=/home/MysqlData1/mysql1.sockuser=mysql#skip-grant-tables[mysqld2]port=3307basedir=/usr/local/mysqldatadir=/home/MysqlData2socket=/home/MysqlData2/mysql2.sockuser=mysql#skip-grant-tables[mysqld3]port=3308basedir=/usr/local/mysqldatadir=/home/MysqlData3socket=/home/MysqlData3/mysql3.sockuser=mysql#skip-grant-tables
六、 修改密码并启动Mysql服务
可先在/etc/my.cnf中的每个mysld下加入一行skip-grant-tables, 先免密登录再修改密码。加入后使用mysqld_multi启动服务器,命令如下:
mysqld_multi --defaults-extra-file=/etc/my.cnf start 1-3
启动三个mysql服务后免密登录mysqld1再修改密码,由于默认是3306端口,因此需要指定端口号:
mysql -uroot -P 3306 -h 127.0.0.1
必须指定-h,而且不能使用localhost!
修改密码:
use mysql;update user set authentication_string=password("123456") where user="root";flush privileges;exit
修改密码后退出再登陆,登陆进去后,执行语句确报错:
ERROR 1820 (HY000): You must SET PASSWORD before executing this statement
参考官方的文档,见http://dev.mysql.com/doc/refman/5.6/en/alter-user.html。如下操作后就可以了:
mysql> SET PASSWORD = PASSWORD('123456');Query OK, 0 rows affected (0.03 sec)mysql> flush privileges;
此时,mysqld1服务器可以正常的通过密码登陆,停止。相同的方法可以用在mysqld2,mysqld3上修改密码。
注意:使用mysqld_multi停止服务时,命令中需要带密码:
mysqld_multi --password=123456 stop 1-3
0 0
- Ubuntu 14.04下 运行多个MySQL服务器
- 运行多个MYSQL服务器
- 在同一台机器上运行多个MySQL服务器
- 在同一台机器上运行多个MySQL服务器
- 在同一台机器上运行多个MySQL服务器
- 在Unix中运行多个mysql服务器
- 在一台机子上运行多个MySQL服务器
- 同一台服务器运行多个mysql实例
- 在同一台机器上运行多个MySQL服务器
- Ubuntu服务器下配置 mysql
- inux下如何安装并运行多个tomcat服务器
- ubuntu下如何同时启动多个Tomcat服务器
- ubuntu下运行第一个opencv程序
- Ubuntu 14.04下MySQL服务器和客户端的安装
- Ubuntu 14.04下搭建Web服务器(MySQL+PHP+Apache) 教程
- ubuntu 下使用docker 运行mysql
- Ubuntu:128M下运行MySQL
- 单机环境下安装多个MySQL服务器
- Unit3 文档
- ButterKnife插件的使用
- 培训机构出来的程序员会受偏见?
- iOS中的runtime应用
- 流量突发分析
- Ubuntu 14.04下 运行多个MySQL服务器
- jquery插件
- 关于海量数据问题的解决方案
- 将panel的location属性设置为,当前点击的单元格附近
- laravel中的ORM模型修改created_at,updated_at,deleted_at三个时间字段类型
- ibatis.binding.BindingException: Parameter 'XXX' not found
- Spark学习笔记2@spark-env参数说明
- 子物体批量操作和批量清空
- 91卫图助手下载器永久免费啦