这两天,研究了一下MySQL升级的乱码问题,终于解决了困扰我很久的问题,这里记录一下,以前相关的文章也已经更新了 以后就可以访问的
这两天,研究了一下MySQL升级的乱码问题,终于解决了困扰我很久的问题,这里记录一下,以前相关的文章也已经更新了
以后就可以访问的更换服务器了
先来看问题描述:
开始的服务器版本: Linux + Apache2.0 + php4.4.0 + mysql3.2.3 无乱码 (SQL导出文件起始地)
开始的本地测试版本: XP + IIS5.1 + php4.4.0 + mysql3.2.3 无乱码
更新的服务器版本: Linux + Apache2.0 + php4.4.0 + mysql4.1 无乱码 (空间提供商上传)
更新的本地测试版本: XP + IIS5.1 + php4.4.0 + mysql4.1 无乱码(不知道为什么,但是后来又乱码了)
最新的本地测试版本: XP + Apache2.0 + php4.4.0 + mysql4.1 乱码....崩溃..3天..未解决..
问题解决:
首先将 sql 文件从服务器上下载下来,或者从什么地方得到这个 sql 执行文件
1. 使用 UltraEdit 打开这个文件,观看文件是否是utf-8格式,下面的状态栏有提示,如果不是文件另存为UTF-8(无BOM)格式,观看文件的中文字符,是否显示正常,显示正常OK,继续
说明: 记着是 UltraEdit ,因为这个软件支持UTF-8编码文件(其他的也可以),windows自带的记事本可能出现匪夷所思的事情,无(BOM)格式也很重要,PHP不支持BOM头... 如果这里无法显示正常的话,不可能往下进行了...我试过,所以说多用不同形式导出几次,使得原始数据正常
2. 如果sql文件出现,新建表指令,注意中间的
ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=101 ;
修改为: ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=101 ;
说明: 本操作就是告诉mysql表使用什么字符集
3. 新建数据库,使用 utf8_general_ci
4. 使用 phpMyAdmin 导入该文件到 mysql4, 导入的文件编码选择 UTF-8
说明: 如果导入错误,看看是否出现语法错误,修改,继续导入
5. 使用 phpMyAdmin 浏览相关记录,观看中文记录是否显示正常,正常继续
6. 浏览你的php程序,观看,读取数据库内容,仍然乱码,在打开数据库 @mysql_connect( $host, $user, $pass ) 类似语句之后添加 @mysql_query("SET NAMES 'utf8'");
7. 刷新网页,OK,成功
说明:
中间任何的过程出现错误,将导致转换失败
这里还有一个问题,就是现在所有的数据,前台数据,数据库数据,和传输过程的数据都用utf-8格式,所以相关的数据量必然会增大,如果网页特别巨大,而且考虑到页面加载问题,可能会出现一点问题
恩,相关的知识就不在这里细说了,我已经写在了这个博客中的"网站开发"类别中,想了解的,可以去看看
个人感觉.很复杂.mysql,phpmyadmin,php,mysql 各个方面都会导致乱码问题.
不过今天解决了

InnoDB verwendet Redologs und undologische, um Datenkonsistenz und Zuverlässigkeit zu gewährleisten. 1.REDOLOogen zeichnen Datenseitenänderung auf, um die Wiederherstellung und die Durchführung der Crash -Wiederherstellung und der Transaktion sicherzustellen. 2.Strundologs zeichnet den ursprünglichen Datenwert auf und unterstützt Transaktionsrollback und MVCC.

Zu den wichtigsten Kennzahlen für Erklärungsbefehle gehören Typ, Schlüssel, Zeilen und Extra. 1) Der Typ spiegelt den Zugriffstyp der Abfrage wider. Je höher der Wert ist, desto höher ist die Effizienz, wie z. B. const besser als alle. 2) Der Schlüssel zeigt den verwendeten Index an, und Null zeigt keinen Index an. 3) Zeilen schätzt die Anzahl der gescannten Zeilen und beeinflussen die Abfrageleistung. 4) Extra liefert zusätzliche Informationen, z.

Die Verwendung von Temporary zeigt an, dass die Notwendigkeit, temporäre Tabellen in MySQL-Abfragen zu erstellen, die üblicherweise in der Reihenfolge mit unterschiedlichen, gruppby- oder nicht indizierten Spalten gefunden werden. Sie können das Auftreten von Indizes vermeiden und Abfragen umschreiben und die Abfrageleistung verbessern. Insbesondere bedeutet dies, dass MySQL temporäre Tabellen erstellen muss, um Abfragen zu verarbeiten. Dies tritt normalerweise auf, wenn: 1) Deduplizierung oder Gruppierung bei Verwendung von unterschiedlichem oder gruppy; 2) Sortieren Sie, wann OrderBy Nicht-Index-Spalten enthält. 3) Verwenden Sie eine komplexe Unterabfrage oder verbinden Sie Operationen. Optimierungsmethoden umfassen: 1) OrderBy und GroupB

MySQL/InnoDB unterstützt vier Transaktions -Isolationsstufen: ReadUnCommitt, Readcommidt, RepeatableAlead und Serializable. 1.Readuncommittes ermöglicht das Lesen von nicht übereinstimmenden Daten, was zu schmutzigem Lesen führen kann. 2. Readcommited vermeidet schmutziges Lesen, aber es kann nicht wiederholbare Lektüre auftreten. 3.Repeatableread ist die Standardebene, die schmutzige Lektüre und nicht wiederholbares Lesen vermeidet, aber Phantom-Lesen kann auftreten. V. Die Auswahl der geeigneten Isolationsstufe erfordert die Ausgleichsdatenkonsistenz und die Leistungsanforderungen.

MySQL eignet sich für Webanwendungen und Content -Management -Systeme und ist beliebt für Open Source, hohe Leistung und Benutzerfreundlichkeit. 1) Im Vergleich zu Postgresql führt MySQL in einfachen Abfragen und hohen gleichzeitigen Lesevorgängen besser ab. 2) Im Vergleich zu Oracle ist MySQL aufgrund seiner Open Source und niedrigen Kosten bei kleinen und mittleren Unternehmen beliebter. 3) Im Vergleich zu Microsoft SQL Server eignet sich MySQL besser für plattformübergreifende Anwendungen. 4) Im Gegensatz zu MongoDB eignet sich MySQL besser für strukturierte Daten und Transaktionsverarbeitung.

Die MySQL -Idium -Kardinalität hat einen signifikanten Einfluss auf die Abfrageleistung: 1. Hoher Kardinalitätsindex kann den Datenbereich effektiver einschränken und die Effizienz der Abfrage verbessern. 2. Niedriger Kardinalitätsindex kann zu einem vollständigen Tischscannen führen und die Abfrageleistung verringern. 3. Im gemeinsamen Index sollten hohe Kardinalitätssequenzen vorne platziert werden, um die Abfrage zu optimieren.

Der MySQL -Lernpfad umfasst Grundkenntnisse, Kernkonzepte, Verwendungsbeispiele und Optimierungstechniken. 1) Verstehen Sie grundlegende Konzepte wie Tabellen, Zeilen, Spalten und SQL -Abfragen. 2) Lernen Sie die Definition, die Arbeitsprinzipien und die Vorteile von MySQL kennen. 3) Master grundlegende CRUD -Operationen und fortgeschrittene Nutzung wie Indizes und gespeicherte Verfahren. 4) KON -Debugging- und Leistungsoptimierungsvorschläge, wie z. B. rationale Verwendung von Indizes und Optimierungsabfragen. In diesen Schritten haben Sie einen vollen Verständnis für die Verwendung und Optimierung von MySQL.

Die realen Anwendungen von MySQL umfassen grundlegende Datenbankdesign und komplexe Abfrageoptimierung. 1) Grundnutzung: Wird zum Speichern und Verwalten von Benutzerdaten verwendet, z. B. das Einfügen, Abfragen, Aktualisieren und Löschen von Benutzerinformationen. 2) Fortgeschrittene Nutzung: Verwandte komplexe Geschäftslogik wie Auftrags- und Bestandsverwaltung von E-Commerce-Plattformen. 3) Leistungsoptimierung: Verbesserung der Leistung durch rationale Verwendung von Indizes, Partitionstabellen und Abfrage -Caches.


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

SecLists
SecLists ist der ultimative Begleiter für Sicherheitstester. Dabei handelt es sich um eine Sammlung verschiedener Arten von Listen, die häufig bei Sicherheitsbewertungen verwendet werden, an einem Ort. SecLists trägt dazu bei, Sicherheitstests effizienter und produktiver zu gestalten, indem es bequem alle Listen bereitstellt, die ein Sicherheitstester benötigen könnte. Zu den Listentypen gehören Benutzernamen, Passwörter, URLs, Fuzzing-Payloads, Muster für vertrauliche Daten, Web-Shells und mehr. Der Tester kann dieses Repository einfach auf einen neuen Testcomputer übertragen und hat dann Zugriff auf alle Arten von Listen, die er benötigt.

Dreamweaver Mac
Visuelle Webentwicklungstools

PHPStorm Mac-Version
Das neueste (2018.2.1) professionelle, integrierte PHP-Entwicklungstool