MySQL-远程连接拒绝访问、区分字段大小写、版本不同在Navicat中的导入问题
数据库远程连接拒绝访问解决办法:
1、 改表法。可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"
mysql -u root -pvmwaremysql>use mysql;mysql>update user set host = '%' where user = 'root';mysql>select host, user from user;
2、 授权法。例如,你想myuser使用mypassword从任何主机连接到mysql服务器的话。
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
如果你想允许用户myuser从ip为192.168.1.3的主机连接到mysql服务器,并使用mypassword作为密码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'10.10.40.54' IDENTIFIED BY '123456' WITH GRANT OPTION;
设置mysql区分字段大小写:
ALTER TABLE table_name MODIFY COLUMN username VARCHAR(32) BINARY;
Navicat中mysql版本改变导入数据问题解决:
1、vim /etc/my.cnf
2、在[mysqld]下面添加如下列:
sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION;
Windows免安装版使用:
1、解压压缩包,进入安装目录,打开cmd
2、mysqld --initialize
3、mysqld -install
4、启动服务看是否成功
5、关闭服务并使用安全模式登录:net stop mysql、 mysqld --skip-grant-tables
6、打开另一个cmd,mysql -u root -p,空白密码,直接回车
7、update user set authentication_string=password("123456") where user="root";
8、flush privileges;
9、重新开启服务登录,SET PASSWORD = PASSWORD(‘your new password‘);
10、ALTER USER ‘root‘@‘localhost‘ PASSWORD EXPIRE NEVER;
11、flush privileges;
12、大功告成
mysql修改密码:
vi /etc/my.cnf # 在[mysqld]下面添加一条命令:skip-grant-tables update user set password=password(“填入新密码”) where user=‘root’;
Linux下安装