解决Ubuntu 12.04中更改MySQL默认编码报错
Jun 07, 2016 pm 05:25 PMUbuntu 12.04,安装了MySQL,完了之后,更改了字符编译,就报错。感觉很郁闷。 环境: root@ubuntu:~# uname -a Linux ubuntu 3.2
Ubuntu 12.04,安装了MySQL,完了之后,更改了字符编译,就报错。感觉很郁闷。
环境:
root@ubuntu:~# uname -a
Linux ubuntu 3.2.0-23-generic #36-Ubuntu SMP Tue Apr 10 20:39:51 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux
使用的 apt-get install mysql-server安装的,然后改变了一下默认的字符集,在/etc/mysql/my.cnf里面的[mysqld]和[client]里加了default-character-set=utf8,重启就不行了。
root@ubuntu:~# service mysql start
start: Job failed to start
看了系统日志,报了以下内容
Jun 11 22:56:42 ubuntu kernel: [ 4051.584941] init: mysql main process (4021) terminated with status 7
Jun 11 22:56:42 ubuntu kernel: [ 4051.584981] init: mysql main process ended, respawning
Jun 11 22:56:43 ubuntu kernel: [ 4052.134766] init: mysql post-start process (4022) terminated with status 1
Jun 11 22:56:43 ubuntu kernel: [ 4052.154739] type=1400 audit(1339469803.511:40): apparmor="STATUS" operation="profile_replace" pid=4068 comm="apparmor_parser"
Jun 11 22:56:44 ubuntu kernel: [ 4053.619246] init: mysql main process (4072) terminated with status 7
Jun 11 22:56:44 ubuntu kernel: [ 4053.619296] init: mysql main process ended, respawning
Jun 11 22:56:45 ubuntu kernel: [ 4054.248707] init: mysql post-start process (4073) terminated with status 1
Jun 11 22:56:45 ubuntu kernel: [ 4054.269778] type=1400 audit(1339469805.627:41): apparmor="STATUS" operation="profile_replace" pid=4119 comm="apparmor_parser"
Jun 11 22:56:47 ubuntu kernel: [ 4055.733347] init: mysql main process (4123) terminated with status 7
Jun 11 22:56:47 ubuntu kernel: [ 4055.733389] init: mysql respawning too fast, stopped
root@ubuntu:~#
纠结了很长时间,,今天无意中测试,意外解决了问题,呵呵,不得不说,RP爆发。
配置文件如下
root@ubuntu:/etc/mysql# cat /etc/mysql/my.cnf | grep -v '^#'
[client]
default-character-set=utf8 #这里其实不用指定的,如果要指定,要用这个指令。
port = 3306
socket = /var/run/mysqld/mysqld.sock
[mysqld_safe]
socket = /var/run/mysqld/mysqld.sock
nice = 0
[mysqld]
character_set_server=utf8 #要使用这个命令,default-character-set=utf8会报错
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
lc-messages-dir = /usr/share/mysql
skip-external-locking
bind-address = 127.0.0.1
key_buffer = 16M
max_allowed_packet = 16M
thread_stack = 192K
thread_cache_size = 8
myisam-recover = BACKUP
query_cache_limit = 1M
query_cache_size = 16M
expire_logs_days = 10
max_binlog_size = 100M
[mysqldump]
quick
quote-names
max_allowed_packet = 16M
[mysql]
[isamchk]
key_buffer = 16M
!includedir /etc/mysql/conf.d/
root@ubuntu:/etc/mysql#
可以看出,在[client]和[myslqd]段中,设置字符编码使用的指令不一样。
然后重启mysql就可以了
root@ubuntu:/etc/mysql# service mysql restart
mysql stop/waiting
mysql start/running, process 6981
root@ubuntu:/etc/mysql# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 147
Server version: 5.5.22-0ubuntu1 (Ubuntu)
Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
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 | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.00 sec)

Heißer Artikel

Hot-Tools-Tags

Heißer Artikel

Heiße Artikel -Tags

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Reduzieren Sie die Verwendung des MySQL -Speichers im Docker

Wie verändern Sie eine Tabelle in MySQL mit der Änderungstabelleanweisung?

So lösen Sie das Problem der MySQL können die gemeinsame Bibliothek nicht öffnen

Führen Sie MySQL in Linux aus (mit/ohne Podman -Container mit Phpmyadmin)

Ausführen mehrerer MySQL-Versionen auf macOS: Eine Schritt-für-Schritt-Anleitung

Wie sichere ich mich MySQL gegen gemeinsame Schwachstellen (SQL-Injektion, Brute-Force-Angriffe)?

Was sind einige beliebte MySQL -GUI -Tools (z. B. MySQL Workbench, PhpMyAdmin)?
