Windows下面安装和配置MySQL(5.6.20)

来源:互联网 发布:海量数据与数据港谁好 编辑:程序博客网 时间:2024/05/16 02:33

dows下面安装和配置MySQL(5.6.20)

1.首先到http://dev.mysql.com/ 上下载windows版mysql5.6免安装zip包。然后将zip包解压到D:\mysql-5.6.20-winx64下。

2.复制mysql下的my-default.ini, 在同目录下创建my.ini. my.ini为mysql的配置。最简单的配置:

1 basedir=D:/mysql-5.6.20-winx642 datadir=D:/mysql-5.6.20-winx64/data

我的配置为:

复制代码
 1 # For advice on how to change settings please see 2 # http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html 3 # *** DO NOT EDIT THIS FILE. It's a template which will be copied to the 4 # *** default location during install, and will be replaced if you 5 # *** upgrade to a newer version of MySQL. 6  7 [mysqld] 8 character-set-server=utf8 9 10 # Remove leading # and set to the amount of RAM for the most important data11 # cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.12 # innodb_buffer_pool_size = 128M13 14 # Remove leading # to turn on a very important data integrity option: logging15 # changes to the binary log between backups.16 # log_bin17 18 # These are commonly set, remove the # and set as required.19 # basedir = .....20 # datadir = .....21 # port = .....22 # server_id = .....23 basedir=D:/mysql-5.6.20-winx6424 datadir=D:/mysql-5.6.20-winx64/data25 port=1330626 27 character-set-server=utf828 default-storage-engine=INNODB29 innodb_data_home_dir=D:/mysql-5.6.20-winx64/data30 innodb_data_file_path=ibdata1:12M:autoextend31 innodb_log_group_home_dir=D:/mysql-5.6.20-winx64/data32 33 innodb_buffer_pool_size=10240M34 innodb_log_file_size=4G35 # Remove leading # to set options mainly useful for reporting servers.36 # The server defaults are faster for transactions and fast SELECTs.37 # Adjust sizes as needed, experiment to find the optimal values.38 # join_buffer_size = 128M39 # sort_buffer_size = 2M40 # read_rnd_buffer_size = 2M 41 42 # sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 
复制代码

还可以在my.ini中增加lower_case_table_names=1(默认linux是区分表名大小写的,加上这句话表示在linux下不区分表名大小写)

mysql : Lock wait timeout exceeded; try restarting transaction

原因是你使用的InnoDB表类型的时候,
默认参数:innodb_lock_wait_timeout设置锁等待的时间是50s,
因为有的锁等待超过了这个时间,所以抱错.你可以把这个时间加长,或者优化存储过程,事务避免过长时间的等待.

#innodb_lock_wait_timeout = 50innodb_lock_wait_timeout = 500 改成500秒

3.设置环境变量PATH。将D:\mysql-5.6.20-winx64\bin加入path中。

4.CMD下面尝试启动mysqld --console,并将后台log输出在屏幕。

5.注册mysql为windows service. 以后可以使用windows service来安装mysqld和卸载mysqld的服务.

1)将MySQL 添加到服务中。以管理员模式启动cmd,进入mysql安装路径: D:\mysql-5.6.24-winx64\bin输入  mysqld --install MySQL --defaults-file="D:\mysql-5.6.24-winx64\my.ini"要指定defaults-file.

卸载MySQL服务

mysqld remove

6.进入服务管理器

7.启动MySQL服务

8.net start mysql 启动mysql服务,net stop mysql 停止mysql服务

9.也可以使用mysqladmin命令关闭mysql服务。

10.使用root用户登录mysql数据库

注意:必须保证本机的Hosts中的localhost为127.0.0.1,hosts在C:\windows\System32\drivers\etc中

如果MySQL的连接端口不是默认的3306,可以使用下面的命令

mysql -P13306 -u root -p

指定MySQL连接端口13306

如果MySQL的连接服务器IP不是本机或者用户名不支持本机登陆,可以使用下面的命令

mysql -h机器名或IP地址 -P13306 -u root -p

11.显示数据库文件存放路径和所有数据库

show global variables like "%datadir%"; --查看数据库文件存放路径
show databases;  --显示所有数据库

12.修改root帐户的登陆密码1234:

GRANT ALL ON *.* TO 'root'@'localhost' IDENTIFIED BY '1234';

\q 退出MySQL

13.创建数据库需要指定中文编码方式

在MySQL中使用sql语句创建数据库时,老是忘记指定编码格式。这就导致了使用utf-8格式的工程访问数据库的过程中产生中文乱码的问题。后来发现大部分问题出自创建数据库的时候没有指定编码格式。创建数据库指定编码格式的一种方法是在创建数据库sql语句中指定编码格式,如下所示,指定数据库编码格式为utf-8

CREATE DATABASE `test2` DEFAULT CHARACTER SET utf8 COLLATE  utf8_general_ci;


14.查看MySQL存储引擎

show engines;

15.创建mysql远程连接用户,设置最大权限和登陆密码。

GRANT ALL ON *.* TO 'sa'@'%' IDENTIFIED BY '1234' WITH GRANT OPTION;

还有一些测试mysql安装的命令:

最后设置打开死锁开关的命令:

set global innodb_print_all_deadlocks=on

查看开关是否已经打开的命令:

show variables like 'innodb_print_all_deadlocks'

 

skip-grant-tables:非常有用的mysql启动参数

在my.cnf文件中增加一行:

skip-grant-tables

或者以命令行参数启动mysql:

/usr/bin/mysqld_safe --skip-grant-tables &

登陆mysql

mysql

修改管理员密码:

1 use mysql;2 update user set password=password('1234') where user='root';3 flush privileges;4 exit;

重启mysql

 



0 0
原创粉丝点击