sed -i 's/127.0.0.1/0.0.0.0/' /etc/mysql/mysql.conf.d/mysqld.cnf
service mysql restart
iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
apt-get update
apt-get install iptables-persistent -y
service iptables restart
mysql -uroot -proot -P3306 -h127.0.0.1<<EOF
drop DATABASE contest2;
CREATE DATABASE contest2 character set utf8;
CREATE USER 'contest2'@'%' IDENTIFIED BY 'contest2';
SET PASSWORD FOR 'contest2'@'%' = PASSWORD('contest2');
GRANT ALL ON contest2.* TO 'contest2'@'%';
EOF
exit;
EOF
mysql -ucontest2 -pcontest2 -P3306 -h172.24.54.144
一、检查当前数据库编码。
使用语句:
show variables like '%character%';
show variables like '%collation%';
1、 编辑MySql的配置文件
MySql的配置文件Windows下一般在系统目录下或者在MySql的安装目录下名字叫my.ini,可以搜索,Linux下一般是 /etc/my.cnf
--在 [mysqld] 标签下加上以下内容:
# default-character-set=utf8
# character-set-server=utf8
character-set-filesystem=utf8
注意:如果此标签下已经存在“default-character-set=GBK”类似的内容,只需修改即可。
--在 [mysql] 标签下加上一行
default-character-set = utf8
--在 [mysql.server]标签下加上一行
default-character-set = utf8
--在 [mysqld_safe]标签下加上一行
default-character-set = utf8
--在 [client]标签下加上一行
default-character-set = utf8
2、 重新启动MySql服务
Windows可在服务管理器中操作,也可使用命令行:
net stop mysql
net start mysql
服务名可能不一定为mysql,请按自己的设置 Linux下面可是用:
service mysql restart
如果出现启动失败,请检查配置文件有没有设置错误
或者登陆mysql
set character_set_client = utf8mb4;
set character_set_server = utf8mb4;
set character_set_connection = utf8mb4;
set character_set_database = utf8mb4;
set character_set_results = utf8mb4;
set collation_connection = utf8mb4_unicode_ci;
set collation_database = utf8mb4_unicode_ci;
set collation_server = utf8mb4_unicode_ci;
建立数据库时可以使用以下命令:
drop database contest2;
create database contest2 CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
use contest2;
source contest2.sql;
修改数据库编码的命令为:
alter database contest2 CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;