首先,今天写了个很简单的j2ee程序,所有的业务逻辑都没问题,我反复检查,出现中文乱码问题,搞得我头大,最后我把mysql卸载安装了下,重新配置了,好了。。。。。这个时候我想愤怒。不过还是问题解决了,得到了巨人的帮助,实在感谢。明天写个博客,今天先把在这里说下。
你要是首次安装忽略下面的话
- 对于重装来说(免安装版)要把在cmd命令(管理员)中停止mysql进程服务, sc query mysql 查询mysql
- sc delete mysql 删除mysql 这个时候你在打开mysql服务,已经没有了
接着你要
1,删除mysql文件(直接删除)
2,清理下注册表,path变量
关于清理注册表,请百度
===========================================
首次安装
将压缩包解压到你要安装的目录下,我的是:
D:\Program Files (x86)\JavaEE\mysql
-1 配置
- 打开安装目录下的配置文件
- my-default.ini(复制一份)修改文件名为my.ini
- 打开安装目录下的配置文件my-default.ini(复制一份)修改文件名为my.ini
- 用文本类编辑器打开,找到basedir相应位置,将#去掉
- 添加路径
basedir = D:\Program Files (x86)\JavaEE\mysql\mysql-5.6.28-winx64
datadir=D:\Program Files (x86)\JavaEE\mysql\mysql-5.6.28-winx64\data
port = 3306
- 注意修改成你的目录
- 注意:
- 在MySQL5.7.9中没有data文件夹,需要用这几个命令产生data文件夹
- 1)从控制台进入到MySQL解压目录下的 bin 目录下:
2)输入服务安装命令:
1. mysqld --console
2. mysqld --initialize
3. mysqld install
3) 安装成功后会提示服务安装成功。
2.配置环境变量path
- 打开控制面板>系统和安全>系统>高级系统设置>path变量(不在多说)
- 以管理员身份运行cmd,进入MySQL的bin目录,输入mysqld -install
- 安装成功后就要启动服务了 net start mysql服务启动成功!
- 服务启动成功之后,就可以登录了,输入mysql -uroot -p(第一次登录没有密码,直接按回车过),登录成功!
3设置密码(可有可无,有还是比较好的)
- mysql安装之后默认root密码是空
输入mysql -uroot 即可进去mysql
进去之后怎样设置初始密码呢: 输入mysql -uroot 即可进去mysql
进去之后设置初始密码呢:
1、执行(注意分号sql语句)
use mysql ;
update user set password=password(“new_pass”) where user=“root”;
flush privileges;
exit ;
即可。
2、设置新密码跟1中一样
3、忘记密码
在my.ini中加入 [mysqld] 跳过密码验证
skip-name-resolve 然后在cmd中直接输入mysql -uroot
进去,然后执行1中的步骤
4 修改默认编码的配置。
打开my.ini文件在
- 当我们把zip文件格式解压到指定目录后,并且完成基本环境配置后,打开mysql
5.6.24会发现名为【my-default.ini】的文件。我们用记事本打开该文件会发现并没有【default-character-set = xxx】或者【character_set_server=xxx】,怎么回事呢?网上给出的许多方法都是直接修改这句话的xxx为utf8,不急,下面请看第二步: - 复制该文件,并且命名为【my.ini】,这样根目录下就有两个.ini文件了,一个是my-default.ini,一个是my.ini接下来我们只需修改my.ini里面的内容就行了。请看第三步:
- 修改【my.ini】
在[mysqld]下面添加 character_set_server=utf8,注意是【utf8】不是【utf-8】而且后面没有任何标点符号;
在【sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES】这句话后面再添加三行
[client]
port=3306
default-character-set=utf8
4、经过以上三步就ok了。保存后重启服务器,登陆后在命令行输入:
show variables like 'char%';
可查看默认字符集如下图所示:
mysql> show variables like 'char%';
+--------------------------+-------------------------------------------------------------------------+
| Variable_name | Value |
+--------------------------+-------------------------------------------------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | D:\Program Files (x86)\JavaEE\mysql\mysql-5.6.28-winx64\share\charsets\ |
+--------------------------+-------------------------------------------------------------------------+
8 rows in set (0.00 sec)
打开my.ini文件如下:总的做相应的更改
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html
# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.
[mysqld]
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
# These are commonly set, remove the # and set as required.
basedir = D:\mysql-5.6.24-winx64
datadir = D:\mysql-5.6.24-winx64\data
port = 3306
# server_id = .....
character_set_server=utf8
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[client]
port=3306
default-character-set=utf8
mysql命令行下区分大小写设置
[mysqld]
lower_case_table_names=2
开启MySQL远程连接
use mysql
使用“GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘root’ WITH GRANT OPTION;”命令可以更改远程连接的设置。
flush privileges;
select host,user from user;
就要修改它的host为%,表示任意IP地址都可以登录.
或者通过
navicat修改
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-m6A3Juuc-1574753014946)(https://ooo.0o0.ooo/2017/06/22/594b2d4ab1406.png)]
mysql> update user set host = ‘%’ where user = ‘root’;
执行完后可能提示error.再mysql> select host,user from user;查看下吧.
root对应的host成了%,表示可以任意IP地址登录了.