MySQL在Windows平台上的安装及实例多开
测试环境
Win7 64
mysql-5.7.20-winx64.zip
下载地址:
https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.20-winx64.zip
操作:
1、解压安zip包到目标目录(例中为D:\MySQL57)
2、增加my.ini配置文件
说明:我下载下来,没有找到默认的配置文件,所以自己新增
内容如下
[client]
port=3306
[mysql]
default-character-set=utf8
[mysqld]
# 新增server-id =2,已有实例配置server-id=1
server-id = 2
# 首次安装,不能设置绑定主机网络ip(非localhost,非127.0.0.1),如下,否则无法登录
#bind-address=10.118.59.79
# 更改port=3307,已有实例配置port=3306,不能配置成一样的
port=3307
#basedir 根目录,即bin,docs,data,lib等目录所在上级路径
basedir="D:\MySQL57/"
#datadir 数据存储路径,basedir/data
datadir="D:\MySQL57/data/"
# character-set-server 服务器字符集设置
character-set-server=utf8
#存储引擎设置,要打开那个模式,把注释去掉,同时把另一个修改为注释即可。
#如果INNODB模式如果不能启动,删除data目录下ib开头的日志文件重新启动。
#default-storage-engine=MyISAM
default-storage-engine=INNODB
max_connections=512
query_cache_size=0
tmp_table_size=18M
thread_cache_size=8
myisam_max_sort_file_size=64G
myisam_sort_buffer_size=35M
key_buffer_size=25M
read_buffer_size=64K
read_rnd_buffer_size=256K
sort_buffer_size=256K
innodb_flush_log_at_trx_commit=1
innodb_log_buffer_size=1M
innodb_buffer_pool_size=47M
innodb_log_file_size=24M
innodb_thread_concurrency=8
配置参考链接:
https://dev.mysql.com/doc/refman/5.7/en/multiple-windows-services.html
3、注册mysql服务
cd /d D:\MySQL57\bin
D:\MySQL57\bin>mysqld --install mysql2 --defaults-file=D:\MySQL57\my.ini
Service successfully installed.
注:
1、如上,有输出待背景色内容则表示注册成功,也可以通过windows服务管理界面查看验证是否注册成功,5.5版本的mysql似乎不支持,无法注册成功
2、安装:mysqld --install,反之,移除服务命令:mysqld --remove,如果仅有一个实例,也可以不用填写服务名(例中为mysql2)
4、初始化操作
D:\MySQL57\bin>mysqld --initialize --console
2017-11-03T07:26:11.147035Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server
……略
2017-11-03T07:26:13.633035Z 1[Note] A temporary password is generated for root@localhost: Mp&t_y0GJ>CF
注:
1、据网络资料,如果以mysqld --initialize-insecure方式初始化,则设置root用户密码为空;如果以mysqld–initialize方式初始化,则设置root用户密码为一个随机密码,且登录后执行相关操作之前会强制要求更改密码才后执行后续操作
2、--console,输出相关信息,方便初始化操作失败时查看错误信息
5、启动mysql服务
D:\MySQL57\bin>net start mysql2
mysql2 服务正在启动.
mysql2 服务已经启动成功。
注:停止mysql服务器net stop mysql2
6、修改root用户密码
D:\MySQL57\bin>mysqladmin.exe -u root -p -P3307 password ddt1020;
Enter password: ************
mysqladmin: [Warning] Using a password on the command line interface can be insecure.
Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.
注:
1、mysqladmin.exe -u 用户名-p–P端口号password新密码; 新密码不能带引号,否则执行会报语法错误
2、如果不更改密码,登录后操作会报错,如下:
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
7、登录并新建新用户
登录系统
D:\MySQL57\bin>mysql -u root -P3307 -pddt1020;
略
mysql>
新建用户
mysql>create user testacc identified by 'test1234';
Query OK, 0 rows affected (0.01 sec)
mysql>grant all privileges on *.* to 'testacc'@'%' identified by 'test1234' with grant option;
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql>flush privileges;
Query OK, 0 rows affected (0.01 sec)