出自:
创新互联是一家专注于成都做网站、成都网站设计与策划设计,商南网站建设哪家好?创新互联做网站,专注于网站建设10余年,网设计领域的专业建站公司;建站业务涵盖:商南等地区。商南做网站价格咨询:13518219792
1、配置环境变量
我的电脑-属性-高级-环境变量
选择PATH,在其后面添加: 你的mysql bin文件夹的路径 (如:C:\Program Files\MySQL\MySQL Server 5.6\bin )
PATH=.......;C:\Program Files\MySQL\MySQL Server 5.6\bin (注意是追加,不是覆盖)
2、my.ini文件 (ansc编码)
配置文件是在C:\Program Files\MySQL\MySQL Server 5.6\my.ini,或者自己建立一个my.ini文件,
在其中修改或添加配置(如图):
[mysqld]
basedir=C:\Program Files\MySQL\MySQL Server 5.6(mysql所在目录)
datadir=C:\Program Files\MySQL\MySQL Server 5.6\data (mysql所在目录\data)
不用新建data文件夹。
3、
以管理员身份运行cmd(一定要用管理员身份运行,不然权限不够),
输入:cd C:\Program Files\MySQL\MySQL Server 5.6\bin 进入mysql的bin文件夹
mysqld -install
继续在cmd中输入:net start mysql
注意:这个时候经常会出现错误2和错误1067。
如果出现“错误2 系统找不到文件”,检查一下是否修改过配置文件或者是否进入在bin目录下操作,如果配置文件修改正确并且进入了bin文件夹,需要先删除mysql(输入 mysqld -remove)再重新安装(输入 mysqld -install);
如果出现错误1067,那就是配置文件修改错误,确认一下配置文件是否正确。
4、第三步启动时,报错:
mysql无法启动,服务没有报告任何错误
bin下执行:
mysqld --initialize-insecure
会创建data目录。再次启动mysql
5、首次安装的mysql,没有密码
bin下
mysql -u root - p
mysql
设置密码有很多方法:
1.用root 进入mysql后
mysqlset password =password('你的密码');
mysqlflush privileges;
2.使用GRANT语句
mysqlgrant all on . to 'root'@'localhost' IDENTIFIED BY '你的密码'with grant option ;
mysqlflush privileges;
3.进入mysql库修改user表
mysqluse mysql;
mysqlupdate user set password=password('你的密码') where user='root';
mysqlflush privileges;
MYSQL表压缩和整理如下:
633M
-rw-rw----
1
mysql
mysql
632M
Oct
25
17:51
url_comment_0.ibd
12K
-rw-rw----
1
mysql
mysql
8.7K
Oct
25
18:16
url_comment_0.frm
178M
-rw-rw----
1
mysql
mysql
178M
Oct
25
18:53
url_comment_0.MYD
99M
-rw-rw----
1
mysql
mysql
98M
Oct
25
18:53
url_comment_0.MYI
结论:由上面数据可知innodb
plugin能有效压缩innodb数据文件,近50%,另外相同的情况下使用MyISAM表也可较大的减少数据大小(178+99633M).
当然实际的压缩比例和表的结构等有关,如字段为varchar会有较大的压缩比,而int类型压缩率会低些。
633M -rw-rw---- 1 mysql mysql 632M Oct 25 17:51 url_comment_0.ibd
12K -rw-rw---- 1 mysql mysql 8.7K Oct 25 18:16 url_comment_0.frm
178M -rw-rw---- 1 mysql mysql 178M Oct 25 18:53 url_comment_0.MYD
99M -rw-rw---- 1 mysql mysql 98M Oct 25 18:53 url_comment_0.MYI结论:由上面数据可知innodb plugin能有效压缩innodb数据文件,近50%,另外相同的情况下使用MyISAM表也可较大的减少数据大小(178+99633M).
当然实际的压缩比例和表的结构等有关,如字段为varchar会有较大的压缩比,而int类型压缩率会低些~
其它的压缩技术还可以使用myisampack,ARCHIVE,infobright等技术,但是这些技术常是用于数据表归档操作,令数据表有较大压缩比,但有不能进行update,insert操作等缺点,不在本文讨论范围~
1、首先解压缩下载的安装包。
2、解压之后可以将该文件夹改名,例如mysql,放到合适的位置,比如放到C:\mysql路径中。
3、配置环境:
我的电脑-属性-高级-环境变量
选择PATH,在其后面添加: mysql\bin文件夹的路径 (如:C:\mysql\bin)
PATH=.......; C:\mysql\bin (在PATH最后添加分号;并填写路径)
4.修改mysql文件夹下配置文件,默认文件夹内有个名为my-default的配置文件,将其修改为my
再在其中修改或添加配置:
[mysqld]
basedir= "C:\mysql\"(mysql所在目录)
datadir= "C:\mysqldata\" (mysql data所在目录,需要在C盘下创建文件夹mysqldata)
在C盘下新建mysqldata文件夹。
5.以管理员身份运行cmd,执行命令mysqld --initialize 进行初始化创建1个文本文件,并将下述命令置于单一行中:SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPassword');用任意名称保存该文件。在本例中,该文件为C:\mysqldata\init.txt。在命令行中执行mysqld --init-file=C:\mysqldata\init.txt
此命令会不会自动退出,打开另一个cmd(不需要管理员权限),执行命令mysql -u root -p,按回车键,输入密码为MyNewPassword,即可进入mysql 。
退出mysqld 服务可以通过任务管理器结束mysqld.exe进程。
6.以管理员身份运行cmd,输入mysqld --install 安装mysql服务。
在计算机管理服务中会出现MySQL服务,以后想进入mysql,直接启动MySQL服务即可。
启动MySQL 会出现错误:
报错的原因是无法找到Mysql执行文件,通过修改注册表进行处理,到注册表里HKEY_LOCAL_MECHINE---SYSTEM ---CurrentControlSet---services 更改查找MySQL项值,然后改路径。
通过"win"键+R键一起按,调出“运行”窗口,输入regedit调出注册表
找到 HKEY_LOCAL_MECHINE---SYSTEM ---CurrentControlSet ---services
在services中找到MySQL
更改ImagePath 值为mysql\bin所在路径,例如本例中:"C:\mysql\bin\mysqld" MySQL
7.通过命令行执行net start mysql 或者是在计算机管理中的服务下启动MySQL,然后在命令行下输入mysql -u root -p 进入。
通用规律只有使用 --all-databases (-A) 会 ERROR 1356,那就看看他到底备份了什么东西。于是喊上同事一起 less 看了下,上下扫了两眼。突然发现:1. 备份 SQL 文件里 DROP 掉了 mysql.proc;2. 后CREATE了一个新的 mysql.proc;3. LOCK TABLES 和 UNLOCK TABLES 中间居然没有备份 CREATE ROUTINE 任何数据?这不就是相当于每次导入全备都给我一个没有任何 sys schema routines 的全新 mysql.proc 表?那这不就异常的尴尬?
---- Table structure for table `proc`--
---- Dumping data for table `proc`-
真相大白在官方文档【sys-schema-usage】官方文档明确的告诉我们不会备份 sys 库。但在使用 mysqldump 在执行 --all-databases 会清空 mysql.proc 导致 sys 无法正常使用;这是一个 BUG,并且只存在于 MySQL 5.7.x !
1、mysql_upgrade install or upgrade sys schema
这个方案适用于 sys 库已经因为 mysqldump 导入而损坏的情况下使用。
注意:mysql_upgrade 在修理 sys 库的同时,还修理 mysql 库和用户库表(期间加锁且速度一般),有极小可能会误伤;使用 mysql_upgrade 的时候要加上 --upgrade-system-tables,不然会扫描用户库表。
2、全备时同时备份 sys 库
这个方案适用于需要还原的数据库,sys 库也不太正常的情况下使用;在全备后额外再备份一份 sys 库用于修复。
注意:不适用于做主从时使用它。
3、使用 databases 全备
这个方案适用于所有场景的全备需求,100% 安全。
4、使用 mysql-sys 开源代码
如果你的数据库 sys 全部中招了,又是生产库。那你只能用这个方法;
mysql-sys:
中记录了 sys 库的创建语句将文件下载到本地,然后根据数据库版本,执行以下命令即可。