Home Database Mysql Tutorial 在MAC下配置mysql数据库的编码问题_MySQL

在MAC下配置mysql数据库的编码问题_MySQL

Jun 01, 2016 pm 01:44 PM
develop database

bitsCN.com

 

最近安装了mac osx lion系统,然后安装了mysql5.5.16版本的数据库进行开发,但是大家都知道,mysql的默认编码是latin1,如果存储中文的话就会出现乱码,然后就狂google这个问题,但是一直都没有解决,网上大部分的回答都是如下:

       1.拷贝/usr/local/mysql/support-files下的任意一个*.cnf文件到/etc/my.cnf;

       2.在my.cnf文件的[mysqld]和[client]后面添加一句default-character-set=utf8(或者是default_character_set=utf8);

       3.保存退出;

       4.重新启动mysql服务器就可以。

       可是我试过好多次,这样修改之后,mysql服务根本就启动不了。

偶然的机会,我发现了一个关于在linux下配置mysql的编码问题的方法,抱着试试看的态度,我进行了修改,发现真的可以用,因此发这篇博文希望装mac的朋友不用再走弯路了。配置方法如下:

       1.拷贝/usr/local/mysql/support-files下的任意一个*.cnf文件到/etc/my.cnf;

       2.在my.cnf文件的[client]后面添加一句default-character-set=utf8( 不是default_character_set=utf8[i][/i],这个配置我没有试过,不知道能不能成功),关键在这里的配置,在[mysqld]后面添加如下三句:

default-storage-engine=INNODB

character-set-server=utf8

collation-server=utf8_general_ci;

        3.保存退出;

        4.重新启动mysql服务器就可以。

然后再就入mysql数据库查看编码发现改成了utf8了。

下面是我重启mysql服务器进入mysql数据库查出来的结果:

Java代码 

Welcome to the MySQL monitor.  Commands end with ; or /g.  

Your MySQL connection id is 520 

Server version: 5.5.16 MySQL Community Server (GPL)  

 

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/local/mysql-5.5.16-osx10.6-x86_64/share/charsets/ |  

+--------------------------+--------------------------------------------------------+  

8 rows in set (0.00 sec) 

 

Welcome to the MySQL monitor.  Commands end with ; or /g.

Your MySQL connection id is 520

Server version: 5.5.16 MySQL Community Server (GPL)

 

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/local/mysql-5.5.16-osx10.6-x86_64/share/charsets/ |

+--------------------------+--------------------------------------------------------+

8 rows in set (0.00 sec)

 

       至此,这个困扰多日的问题终于解决了。

       附修改好的my.cnf文件内容,不知道为什么附件我上传不了,就把代码贴出来吧:

Java代码 

# Example MySQL config file for small systems.  

#  

# This is for a system with little memory (

# from time to time and it's important that the mysqld daemon  

# doesn't use much resources.  

#  

# MySQL programs look for option files in a set of  

# locations which depend on the deployment platform.  

# You can copy this option file to one of those  

# locations. For information about these locations, see:  

# http://dev.mysql.com/doc/mysql/en/option-files.html  

#  

# In this file, you can use all long options that a program supports.  

# If you want to know which options a program supports, run the program  

# with the "--help" option.  

 

# The following options will be passed to all MySQL clients  

[client]  

default-character-set=utf8  

#password   = your_password  

port        = 3306 

socket      = /tmp/mysql.sock  

 

# Here follows entries for some specific programs  

 

# The MySQL server   

[mysqld]  

default-storage-engine=INNODB  

character-set-server=utf8  

collation-server=utf8_general_ci  

port        = 3306 

socket      = /tmp/mysql.sock  

skip-external-locking  

key_buffer_size = 16K  

max_allowed_packet = 1M  

table_open_cache = 4 

sort_buffer_size = 64K  

read_buffer_size = 256K  

read_rnd_buffer_size = 256K  

net_buffer_length = 2K  

thread_stack = 128K  

 

# Don't listen on a TCP/IP port at all. This can be a security enhancement,  

# if all processes that need to connect to mysqld run on the same host.  

# All interaction with mysqld must be made via Unix sockets or named pipes.  

# Note that using this option without enabling named pipes on Windows  

# (using the "enable-named-pipe" option) will render mysqld useless!  

#   

#skip-networking  

server-id   = 1 

 

# Uncomment the following if you want to log updates  

#log-bin=mysql-bin  

 

# binary logging format - mixed recommended  

#binlog_format=mixed  

 

# Causes updates to non-transactional engines using statement format to be  

# written directly to binary log. Before using this option make sure that  

# there are no dependencies between transactional and non-transactional  

# tables such as in the statement INSERT INTO t_myisam SELECT * FROM  

# t_innodb; otherwise, slaves may perge from the master.  

#binlog_direct_non_transactional_updates=TRUE  

 

# Uncomment the following if you are using InnoDB tables  

#innodb_data_home_dir = /usr/local/mysql/data  

#innodb_data_file_path = ibdata1:10M:autoextend  

#innodb_log_group_home_dir = /usr/local/mysql/data  

# You can set .._buffer_pool_size up to 50 - 80 %  

# of RAM but beware of setting memory usage too high  

#innodb_buffer_pool_size = 16M  

#innodb_additional_mem_pool_size = 2M  

# Set .._log_file_size to 25 % of buffer pool size  

#innodb_log_file_size = 5M  

#innodb_log_buffer_size = 8M  

#innodb_flush_log_at_trx_commit = 1 

#innodb_lock_wait_timeout = 50 

 

[mysqldump]  

quick  

max_allowed_packet = 16M  

 

[mysql]  

no-auto-rehash  

# Remove the next comment character if you are not familiar with SQL  

#safe-updates  

 

[myisamchk]  

key_buffer_size = 8M  

sort_buffer_size = 8M  

 

[mysqlhotcopy]  

interactive-timeout 

 

作者:zhyl2010

bitsCN.com
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

AI Hentai Generator

AI Hentai Generator

Generate AI Hentai for free.

Hot Article

R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
2 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Best Graphic Settings
2 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Four recommended AI-assisted programming tools Four recommended AI-assisted programming tools Apr 22, 2024 pm 05:34 PM

This AI-assisted programming tool has unearthed a large number of useful AI-assisted programming tools in this stage of rapid AI development. AI-assisted programming tools can improve development efficiency, improve code quality, and reduce bug rates. They are important assistants in the modern software development process. Today Dayao will share with you 4 AI-assisted programming tools (and all support C# language). I hope it will be helpful to everyone. https://github.com/YSGStudyHards/DotNetGuide1.GitHubCopilotGitHubCopilot is an AI coding assistant that helps you write code faster and with less effort, so you can focus more on problem solving and collaboration. Git

How does Go language implement the addition, deletion, modification and query operations of the database? How does Go language implement the addition, deletion, modification and query operations of the database? Mar 27, 2024 pm 09:39 PM

Go language is an efficient, concise and easy-to-learn programming language. It is favored by developers because of its advantages in concurrent programming and network programming. In actual development, database operations are an indispensable part. This article will introduce how to use Go language to implement database addition, deletion, modification and query operations. In Go language, we usually use third-party libraries to operate databases, such as commonly used sql packages, gorm, etc. Here we take the sql package as an example to introduce how to implement the addition, deletion, modification and query operations of the database. Assume we are using a MySQL database.

Learn how to develop mobile applications using Go language Learn how to develop mobile applications using Go language Mar 28, 2024 pm 10:00 PM

Go language development mobile application tutorial As the mobile application market continues to boom, more and more developers are beginning to explore how to use Go language to develop mobile applications. As a simple and efficient programming language, Go language has also shown strong potential in mobile application development. This article will introduce in detail how to use Go language to develop mobile applications, and attach specific code examples to help readers get started quickly and start developing their own mobile applications. 1. Preparation Before starting, we need to prepare the development environment and tools. head

Which AI programmer is the best? Explore the potential of Devin, Tongyi Lingma and SWE-agent Which AI programmer is the best? Explore the potential of Devin, Tongyi Lingma and SWE-agent Apr 07, 2024 am 09:10 AM

On March 3, 2022, less than a month after the birth of the world's first AI programmer Devin, the NLP team of Princeton University developed an open source AI programmer SWE-agent. It leverages the GPT-4 model to automatically resolve issues in GitHub repositories. SWE-agent's performance on the SWE-bench test set is similar to Devin, taking an average of 93 seconds and solving 12.29% of the problems. By interacting with a dedicated terminal, SWE-agent can open and search file contents, use automatic syntax checking, edit specific lines, and write and execute tests. (Note: The above content is a slight adjustment of the original content, but the key information in the original text is retained and does not exceed the specified word limit.) SWE-A

How does Hibernate implement polymorphic mapping? How does Hibernate implement polymorphic mapping? Apr 17, 2024 pm 12:09 PM

Hibernate polymorphic mapping can map inherited classes to the database and provides the following mapping types: joined-subclass: Create a separate table for the subclass, including all columns of the parent class. table-per-class: Create a separate table for subclasses, containing only subclass-specific columns. union-subclass: similar to joined-subclass, but the parent class table unions all subclass columns.

iOS 18 adds a new 'Recovered' album function to retrieve lost or damaged photos iOS 18 adds a new 'Recovered' album function to retrieve lost or damaged photos Jul 18, 2024 am 05:48 AM

Apple's latest releases of iOS18, iPadOS18 and macOS Sequoia systems have added an important feature to the Photos application, designed to help users easily recover photos and videos lost or damaged due to various reasons. The new feature introduces an album called "Recovered" in the Tools section of the Photos app that will automatically appear when a user has pictures or videos on their device that are not part of their photo library. The emergence of the "Recovered" album provides a solution for photos and videos lost due to database corruption, the camera application not saving to the photo library correctly, or a third-party application managing the photo library. Users only need a few simple steps

An in-depth analysis of how HTML reads the database An in-depth analysis of how HTML reads the database Apr 09, 2024 pm 12:36 PM

HTML cannot read the database directly, but it can be achieved through JavaScript and AJAX. The steps include establishing a database connection, sending a query, processing the response, and updating the page. This article provides a practical example of using JavaScript, AJAX and PHP to read data from a MySQL database, showing how to dynamically display query results in an HTML page. This example uses XMLHttpRequest to establish a database connection, send a query and process the response, thereby filling data into page elements and realizing the function of HTML reading the database.

Detailed tutorial on establishing a database connection using MySQLi in PHP Detailed tutorial on establishing a database connection using MySQLi in PHP Jun 04, 2024 pm 01:42 PM

How to use MySQLi to establish a database connection in PHP: Include MySQLi extension (require_once) Create connection function (functionconnect_to_db) Call connection function ($conn=connect_to_db()) Execute query ($result=$conn->query()) Close connection ( $conn->close())

See all articles