ตำแหน่งของไฟล์ my.cnf บน macOS


185

ฉันพยายามติดตาม บทช่วยสอนนี้เพื่อเปิดใช้งานการเข้าถึงระยะไกลไปยัง MySQL ปัญหาคือmy.cnfไฟล์ควรอยู่ที่ไหน? ฉันใช้ Mac OS X Lion


ฉันคิดว่านี่เป็นของ serverfault.com แต่ก็ยังยินดีต้อนรับ SO!
Artefact2

คำตอบ:


253

กระทู้ในฟอรั่ม MySQL นี้พูดว่า:

ตามค่าเริ่มต้นการติดตั้ง OS X ไม่ได้ใช้ my.cnf และ MySQL เพียงแค่ใช้ค่าเริ่มต้น หากต้องการตั้งค่า my.cnf ของคุณเองคุณสามารถสร้างไฟล์ตรง / etc

OS X /usr/local/mysql/support-files/ให้แฟ้มการกำหนดค่าตัวอย่างที่

และหากคุณไม่พบที่นั่น MySQLWorkbench สามารถสร้างพวกเขาให้คุณได้โดย:

  1. กำลังเปิดการเชื่อมต่อ
  2. เลือก 'ไฟล์ตัวเลือก' ใต้ 'INSTANCE' ในเมนู
  3. MySQLWorkbench จะค้นหา my.cnf และถ้าหาไม่พบมันจะสร้างให้คุณ

14
อย่างน้อยแพคเกจ MySQL ปัจจุบันสำหรับ Mac OS X (MySQL-5.6.17-osx10.7-x86_64 ในขณะที่เขียนนี้) ไม่ในความเป็นจริงการสร้างและใช้ my.cnf มันตั้งอยู่ที่ /usr/local/mysql-5.6.17-osx10.7-x86_64/my.cnf
Jpsy

104
คุณอาจต้องการให้แน่ใจว่า mysql กำลังโหลดmy.cnfไฟล์ใดก็ตามที่คุณกำลังแก้ไขผ่านmysql --verbose --help | grep my.cnf
ryantuck

3
ใน Mac OS Sierra ไม่ได้ติดตั้งไว้แล้ว ฉันต้องคัดลอก /usr/local/mysql/support-files/my-default.cnf ไปยัง my.cnf ใน dir เดียวกัน โปรดทราบว่า mysql นั้นเชื่อมโยงกับแพ็คเกจในกรณีของฉัน mysql-5.7.17-macos10.12-x86_64
Christia

17
เพิ่งทำการติดตั้ง MySQL 5.7.19 ที่สะอาดบน Mac OS 10.12 โดยใช้. dmg จาก dev.mysql.com ไม่มี my.cnf ในสถานที่ใด ๆ ที่ mysql --help บอกว่ามันดูและไม่มี my-default.cnf ใน / usr / local / mysql / support-files / หรือที่อื่นที่ฉันเจอ ปรากฎว่า"ตั้งแต่ MySQL 5.7.18, my-default.cnf จะไม่รวมอยู่ในหรือติดตั้งโดยแพ็คเกจการกระจาย"อีกต่อไป
Chris Bartley

2
คำตอบนี้เก่าและขึ้นอยู่กับตัวติดตั้งที่คุณใช้ในการติดตั้ง mysql Homebrew วางไว้ที่เดียวตัวติดตั้ง dmg วางไว้ที่อื่น
slashdottir

79

ในกรณีของ Mac OS X Maverick เมื่อติดตั้ง MySQL ผ่าน Homebrew จะอยู่ที่ /usr/local/opt/mysql/my.cnf


6
ซึ่งเป็น /usr/local/Cellar/yourMySqlVersion/my.cnf
m02ph3u5

/ usr / local / opt / mariadb / VERSIONNUMBER / ในกรณีของฉัน MariaDB ได้รับการติดตั้งแล้ว
Steven Lizarazo

9
Mine อยู่ใน /usr/local/etc/my.cnf
Steve Tauber

1
/usr/local/mysql/etcเหมือง ฉันใช้ High Sierra อยู่ แต่ได้ติดตั้งไปแล้วสองสามเวอร์ชัน
Joshua Pinter

คุณเป็นผู้ช่วยชีวิต
Ishan Srivastava

56

โดยทั่วไปในระบบที่คล้าย Unix และ Unix โปรแกรม MySQL / MariaDB จะอ่านไฟล์ config / startup ในตำแหน่งต่อไปนี้ (ตามลำดับที่ระบุ):

  • /etc/my.cnf - ทั่วโลก
  • /etc/mysql/my.cnf - ทั่วโลก
  • SYSCONFDIR/my.cnf - ทั่วโลก

    SYSCONFDIRแสดงถึงไดเรกทอรีที่ระบุพร้อมกับSYSCONFDIRตัวเลือกCMakeเมื่อสร้าง MySQL โดยดีฟอลต์นี่คือไดเร็กทอรี etc ที่อยู่ภายใต้ไดเร็กทอรีการติดตั้งที่คอมไพล์แล้ว

  • $MYSQL_HOME/my.cnf - เฉพาะเซิร์ฟเวอร์ (เซิร์ฟเวอร์เท่านั้น)

    MYSQL_HOME เป็นตัวแปรสภาพแวดล้อมที่มีเส้นทางไปยังไดเรกทอรีที่เซิร์ฟเวอร์เฉพาะ my.cnfไฟล์อยู่ หากMYSQL_HOMEไม่ได้ตั้งค่าและคุณเริ่มเซิร์ฟเวอร์โดยใช้mysqld_safeโปรแกรมให้mysqld_safeตั้งค่าเป็นBASEDIRไดเรกทอรีการติดตั้งฐาน MySQL

  • ไฟล์ที่ระบุด้วย--defaults-extra-file=pathถ้ามี

  • ~/.my.cnf - เฉพาะผู้ใช้
  • ~/.mylogin.cnf - เฉพาะผู้ใช้ (ลูกค้าเท่านั้น)

ที่มา: การใช้ไฟล์ตัวเลือก

หมายเหตุ: บนแพลตฟอร์ม Unix MySQL จะเพิกเฉยต่อไฟล์การกำหนดค่าที่เขียนได้ทั่วโลก นี่คือเจตนาเป็นมาตรการรักษาความปลอดภัย


นอกจากนี้บน Mac ยังมีวิธีการตรวจสอบง่ายๆ

  1. วิ่ง: sudo fs_usage | grep my.cnf

    สิ่งนี้จะรายงานกิจกรรมของระบบไฟล์แบบเรียลไทม์ที่เกี่ยวข้องกับไฟล์นั้น

  2. ในเทอร์มินัลอื่นให้รีสตาร์ท MySQL / MariaDB ของคุณเช่น

    brew services restart mysql

    หรือ:

    brew services restart mariadb
  3. เมื่อเทอร์มินอลด้วยfs_usageควรแสดงตำแหน่งที่เหมาะสมเช่น

    15:52:22  access            /usr/local/Cellar/mariadb/10.1.14/my.cnf                                         0.000002   sh          

    ดังนั้นหากไฟล์ไม่มีอยู่ให้สร้างขึ้นใหม่


6
ขอบคุณ! sudo fs_usage | grep my.cnfวิธีการค่อนข้างมีประสิทธิภาพ ผมพบแฟ้มนี้ในโฟลเดอร์: /usr/local/etc/my.cnf
แกรี่

3
วิธีการที่ดี แต่ฉันได้รับผลลัพธ์หลายมี: private/etc/my.cnf, /usr/local/etc/my.cnf, /usr/local/Cellar/mysql/<myVersion>/my.cnf, ~.my.cnfที่มีmy_print_defอยู่ในคอลัมน์ขวามากที่สุด หลังจากนั้นไม่นานมันก็เป็นเพียงแค่/usr/local/etc/my.cnfเทอร์มินัลของฉันในคอลัมน์ขวาสุด แต่my.cnfไฟล์เหล่านี้ทั้งหมดไม่มีอยู่!
Andru

@Andru หากไม่มีสิ่งใดอยู่ให้สร้างขึ้นมาใหม่
kenorb

1
คำแนะนำชุดสุดท้ายของคุณคือ sudo fs_usage | grep my.cnf เป็นเพียงสิ่งเดียวที่ช่วยฉันในหน้านี้ด้วยเหตุผลที่ไม่ทราบสาเหตุบางประการ mysqld ไม่ได้โหลดจากตำแหน่งเริ่มต้นที่แสดงรายการผ่าน mysql -?
redbirdo

1
คำสั่งนั้น sudo fs_usage | grep my.cnf บันทึกวันของฉันขอบคุณหนึ่งล้าน
Shashikant Soni

33

ฉันไม่รู้ว่า MySQL รุ่นใดที่คุณใช้อยู่ แต่ที่นี่เป็นตำแหน่งที่เป็นไปได้ของไฟล์ my.cnf สำหรับเวอร์ชั่น 5.5 (ถ่ายจากที่นี่ ) บน Mac OS X:

  1. /etc/my.cnf
  2. /etc/mysql/my.cnf
  3. SYSCONFDIR/my.cnf
  4. $MYSQL_HOME/my.cnf
  5. defaults-extra-file(ไฟล์ที่ระบุด้วย--defaults-extra-file=pathถ้ามี)
  6. ~/.my.cnf

21

สำหรับ MySQL 5.7 บน Mac OS X El Capitan: /usr/local/mysql/etc/my.cnf

คัดลอกค่าเริ่มต้นจาก /usr/local/mysql/support-files/my-default.cnf


4
เพื่อให้ชัดเจนคุณต้องสร้างโฟลเดอร์ "etc /" ด้วยตัวคุณเองและคุณต้องใช้สิทธิ์รูทสำหรับ "sudo su -"
โทรจัน

ไม่พบในตำแหน่งนั้นสำหรับฉัน ฉันใช้ MAMP
Mirza Vu

@mirzavu ดูลิงค์นี้: stackoverflow.com/questions/678645/…
Sergio Rodrigues

21

หากคุณใช้ macOS Sierra และไม่มีไฟล์อยู่ให้เรียกใช้

mysql --help or mysql --help | grep my.cnf

เพื่อดูตำแหน่งที่เป็นไปได้และลำดับการโหลด / อ่านของ my.cnf สำหรับ mysql จากนั้นสร้างไฟล์ my.cnf ในหนึ่งในไดเรกทอรีที่แนะนำแล้วเพิ่มบรรทัดต่อไปนี้

[mysqld] sql_mode = STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

sudo touch /{preferred-path}/my.cnfจากนั้นคุณสามารถแก้ไขไฟล์เพื่อเพิ่มโหมด sql ได้

sudo nano /{preferred-path}/my.cnf

จากนั้นเริ่ม mysql ใหม่ voilaah คุณทำได้ดี การเข้ารหัสที่มีความสุข



12

ดังนั้นสิ่งเหล่านี้จึงไม่เหมาะกับฉันเลย ฉันกำลังใช้การติดตั้ง dmg ปัจจุบันของเซิร์ฟเวอร์ชุมชน mysql ป.ล. แสดงให้เห็นว่าพารามิเตอร์ที่สำคัญที่สุดทั้งหมดใน my.cnf ถูกส่งผ่านไปยังบรรทัดคำสั่งและฉันไม่สามารถทราบได้ว่ามาจากไหน หลังจากค้นหาข้อความเต็มของกล่องของฉันฉันพบมันใน:

/Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist

ดังนั้นคุณสามารถเปลี่ยนมันได้หรือนำพวกมันออกไปดังนั้นมันจะเคารพสิ่งที่คุณมีใน my.cnf ของคุณไม่ว่าคุณจะวางที่ใด

สนุก!

ตัวอย่างของข้อมูลไฟล์ที่พบในไฟล์นั้น:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>             <string>com.oracle.oss.mysql.mysqld</string>
    <key>ProcessType</key>       <string>Interactive</string>
    <key>Disabled</key>          <false/>
    <key>RunAtLoad</key>         <true/>
    <key>KeepAlive</key>         <true/>
    <key>SessionCreate</key>     <true/>
    <key>LaunchOnlyOnce</key>    <false/>
    <key>UserName</key>          <string>_mysql</string>
    <key>GroupName</key>         <string>_mysql</string>
    <key>ExitTimeOut</key>       <integer>600</integer>
    <key>Program</key>           <string>/usr/local/mysql/bin/mysqld</string>
    <key>ProgramArguments</key>
        <array>
            <string>/usr/local/mysql/bin/mysqld</string>
            <string>--user=_mysql</string>
            <string>--basedir=/usr/local/mysql</string>
            <string>--datadir=/usr/local/mysql/data</string>
            <string>--plugin-dir=/usr/local/mysql/lib/plugin</string>
            <string>--log-error=/usr/local/mysql/data/mysqld.local.err</string>
            <string>--pid-file=/usr/local/mysql/data/mysqld.local.pid</string>
             <string>--keyring-file-data=/usr/local/mysql/keyring/keyring</string>
             <string>--early-plugin-load=keyring_file=keyring_file.so</string>

        </array>
    <key>WorkingDirectory</key>  <string>/usr/local/mysql</string>
</dict>
</plist>

ที่ดี! คุณบันทึกวันของฉัน
เจนนี่

ฉันมีกรณีเดียวกัน แต่ฉันต้องเพิ่มไฟล์ my.cnf ไปยัง/etc/my.cnf
Eduard Mukans

11

คุณสามารถเปิดเทอร์มินัลและประเภท locate my.cnf


ขออภัยที่เฉพาะเจาะจงไม่เพียงพอฉันต้องคัดลอก 'my-large.cnf' ไปยังโฟลเดอร์บางโฟลเดอร์แล้วเปลี่ยนชื่อเป็น 'my.cnf' แต่ฉันไม่รู้ว่าอยู่ที่ไหน ..
ลัส

1
นอกจากนี้คุณต้องมี db ที่ตั้งที่มีประชากร บน mac osx: sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.locate.plist
arcseldon

10

ใน mysql 5.6.22 ซึ่งฉันติดตั้งจาก Homebrew เส้นทางของ my.cnf คือ

/usr/local/opt/mysql/my.cnf 

10

MacOs sierra 10.12.6 mysql เวอร์ชั่น: 5.7.18_1 ฉันเรียกใช้ค้นหา my.cnfและเส้นทางคือ

/usr/local/etc/my.cnf

หวังว่ามันจะช่วย


พิจารณาเพิ่มคำอธิบายให้กับ asnwer ของคุณ
Inder

@ charles.cc.hsu: ลองใช้คำสั่งlocate my.cnfบนเทอร์มินัลของคุณ ผลลัพธ์คืออะไร
aginanjar

6

คุณสามารถสร้างไฟล์ของคุณภายใต้ไดเรกทอรีใด ๆ ที่คุณต้องการ หลังจากการสร้างคุณสามารถ "บอก" เส้นทางไปยังการกำหนดค่า mysql:

ป้อนคำอธิบายรูปภาพที่นี่


6

คุณสามารถตรวจสอบไฟล์

/usr/local/bin/mysql.serverและดูว่าmy.confอ่านจากที่ไหน

มักจะเป็นจาก/etc/my.cnfหรือ~/my.cnfหรือ~/.my.cnf


การแก้ไข: ~/.my.cnf. เพิ่มจุดก่อนชื่อไฟล์
ไม่ได้กำหนด

5

สำหรับ MAMP 3.5 Mac El Capitan ให้สร้างไฟล์กำหนดค่าแยกต่างหากและเขียนการตั้งค่าเพิ่มเติมสำหรับ mysql

sudo vim /Applications/MAMP/Library/my.cnf

และเพิ่มเช่นนี้

[mysqld]
max_allowed_packet = 256M


4

อ่านเอกสาร!

เอกสาร MySQL ที่คุณใช้จะช่วยคุณได้ มันมักจะอธิบายว่าเป็นหรือOptions File เอกสารมีตำแหน่งของไฟล์เหล่านี้ในเอกสารประกอบรวมถึงข้อมูลอื่น ๆเช่นตำแหน่ง & ตัวอย่างเล็ก ๆ ของไฟล์ปรับแต่งที่ต้องมีลักษณะMySQL Config File
VITAL

MySQL เวอร์ชั่น 8

MySQL เวอร์ชั่น 5.7

MySQL เวอร์ชั่น 5.6

MySQL เวอร์ชั่น 5.5

MySQL เวอร์ชั่น 5.6 ภาษาญี่ปุ่น

หมายเหตุสำคัญ:

บนแพลตฟอร์ม Unix MySQL จะเพิกเฉยต่อไฟล์การกำหนดค่าที่เขียนได้ทั่วโลก

นี่คือเจตนาเป็นมาตรการรักษาความปลอดภัย

กล่าวอีกนัยหนึ่งถ้าคุณมีการตั้งค่าการอนุญาตที่ไม่ถูกต้องในไฟล์ปรับแต่งของคุณจะไม่โหลด

ตัวอย่างการอนุญาตการตั้งค่าเริ่มต้นของหนึ่งในไฟล์กำหนดค่า:

RIZZOMBP$ ls -lah /etc/my.cnf
-rw-r--r--  1 myusername  wheel     0B Feb 25 20:40 /etc/my.cnf

บันทึก:

คุณสามารถใช้!includeคำสั่งในไฟล์ตัวเลือกเพื่อรวมไฟล์ตัวเลือกอื่นและ!includedirเพื่อค้นหาไดเรกทอรีเฉพาะสำหรับไฟล์ตัวเลือก .....

... MySQL ไม่รับประกันเกี่ยวกับลำดับที่ไฟล์ตัวเลือกในไดเรกทอรีจะถูกอ่าน ...

ไฟล์ใด ๆ ที่จะถูกค้นพบและรวมไว้โดยใช้คำสั่ง!! รวมถึงบนระบบปฏิบัติการ Unix จะต้องมีชื่อไฟล์ที่ลงท้าย.cnfด้วย บน Windows คำสั่งนี้ตรวจสอบไฟล์ที่มี.iniหรือ.cnfนามสกุล

ตัวอย่างวิธีค้นหาที่ตั้งของไฟล์ config หรือไฟล์บันทึกของคุณ:

SQL

นี่จะไม่แสดงไฟล์ปรับแต่งให้คุณ แต่จะช่วยคุณค้นหาไฟล์ / โฟลเดอร์การติดตั้งของคุณ

รุ่น MySQL 5.7 และ 8+

SELECT * FROM PERFORMANCE_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_VALUE LIKE '%\/%';

รุ่น MySQL <= 5.6

SELECT * FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_VALUE LIKE '%\/%';

SHELL / เทอร์มิ

RIZZOMBP$ mysql --help | grep "Default options" -A 1

Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf ~/.my.cnf

เหนือเครดิตคำสั่งถึง: Erwin Mayerจาก ServerFault

RIZZOMBP$ mysqld --verbose --help | grep '/my.cnf' -B 1

Default options are read from the following files in the given order:
/etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf ~/.my.cnf

หรือ

RIZZOMBP$ ps aux | grep -i mysqld | grep -v $USER

_mysql 106 0.4 2.5 4232336 422112 ?? Ss 7:01PM 0:57.12
/usr/local/mysql/bin/mysqld
--user=_mysql
--basedir=/usr/local/mysql
--datadir=/usr/local/mysql/data
--plugin-dir=/usr/local/mysql/lib/plugin
--log-error=/usr/local/mysql/data/mysqld.local.err
--pid-file=/usr/local/mysql/data/mysqld.local.pid
--keyring-file-data=/usr/local/mysql/keyring/keyring
--early-plugin-load=keyring_file=keyring_file.so

ไฟล์ตัวอย่าง

หากคุณต้องการรายละเอียดตัวอย่างอ้างอิง my.cnf:

  1. https://gist.github.com/search?utf8=%E2%9C%93&q=my.cnf+mysql&ref=searchresults
  2. https://www.linode.com/community/questions/5749/mysql-sample-config-files
  3. https://www.fromdual.com/mysql-configuration-file-sample

ไม่มีส่วนเกี่ยวข้อง / การเชื่อมโยงกับ URL

ระบบของฉัน:

RIZZOMBP$ sw_vers
ProductName:    Mac OS X
ProductVersion: 10.14.3
BuildVersion:   18D109
RIZZOMBP$ mysql -V
mysql  Ver 8.0.15 for macos10.14 on x86_64 (MySQL Community Server - GPL)
RIZZOMBP$ mysqld -V
/usr/local/mysql-8.0.15-macos10.14-x86_64/bin/mysqld 
Ver 8.0.15 for macos10.14 on x86_64 (MySQL Community Server - GPL)

mysql - ช่วยเหลือ | grep "ตัวเลือกเริ่มต้น" -A 1 สิ่งนี้ช่วย
wandermonk


2

ฉันตรวจสอบใน macOS Sierra, ติดตั้ง homebrew แล้ว MySql 5.7.12

ไฟล์สนับสนุนอยู่ที่

/usr/local/opt/mysql/support-files

เพียงคัดลอกmy-default.cnfเป็น/etc/my.cnfหรือ/etc/mysql/my.cnfและการกำหนดค่าจะถูกหยิบขึ้นมาในการรีสตาร์ท


4
ฉันเพิ่งติดตั้ง 5.7.18 ใน 12.12.4 ผ่าน homebrew และพวกเขาไม่ได้อยู่ที่นั่น
norman_h

2

macOS High Sierra เวอร์ชั่น 10.13.6

mysql Ver 14.14 Distrib 5.7.22 สำหรับ osx10.13 (x86_64) โดยใช้ EditLine wrapper Copyright (c) 2000, 2018, Oracle และ / หรือ บริษัท ในเครือ สงวนลิขสิทธิ์

ตัวเลือกเริ่มต้นจะอ่านจากไฟล์ต่อไปนี้ตามลำดับที่กำหนด:

/etc/my.cnf 
/etc/mysql/my.cnf 
/usr/local/etc/my.cnf 
~/.my.cnf


1

ฉันกำลังใช้ mysql รุ่น 5.7.17 ใน macOS High Sierra เวอร์ชั่น 10.13.3 และฉันพบไฟล์กำหนดค่า mysql ที่นี่

cd /usr/local/mysql/support-files/my-default.cnf

ขอบคุณสำหรับเคล็ดลับในการค้นหาไฟล์กำหนดค่าเริ่มต้น หมายเหตุนี้เป็นเพียงแฟ้มแม่แบบเพื่อให้คุณจะต้องการที่จะคัดลอกนี้ไปยังสถานที่ที่พบในmysql --verbose --help | grep my.cnfที่ที่มันจะได้รับการหยิบขึ้นมาเป็นต่อ:DO NOT EDIT THIS FILE. It's a template which will be copied to the default location during install, and will be replaced if you upgrade to a newer version of MySQL.
โจชัวพิ

1

มันควรจะอยู่ภายใต้/usr/local/etcmac ถ้าคุณไม่พบมันคุณสามารถสร้าง




0

สำหรับฉันในรุ่นเซียร์รา

คัดลอกการกำหนดค่าเริ่มต้นที่:

/usr/local/Cellar/mysql/5.6.27/support-files/my-default.cnf

ถึง

/usr/local/Cellar/mysql/5.6.27/my.cnf


0

ในกรณีของฉันไม่มีไฟล์อยู่ ใน MySQL Workbench ฉันไปที่ OPTIONS FILE และพบค่าเริ่มต้นบางอย่าง ฉันคลิกสมัคร มันขออนุญาต จากนั้นจะสร้างไฟล์ my.cnf ภายใต้ / etc อย่างไรก็ตามโปรดจำไว้ว่าครั้งแรกที่คุณคลิก "ใช้" คุณจะไม่ทำการเปลี่ยนแปลงใด ๆ กับการกำหนดค่าเริ่มต้น เมื่อไฟล์ถูกสร้างขึ้นคุณสามารถทำการเปลี่ยนแปลงที่จะนำไปใช้เมื่อคุณคลิก "ใช้" มิฉะนั้นคุณจะไม่เห็นปุ่มนำไปใช้เมื่อคุณทำการเปลี่ยนแปลง


ฉันมีไฟล์ตัวเลือกอยู่/etc/mysql/my.cnfแต่ MySQL Workbench ไม่ทราบ แต่จะบ่นว่าไม่พบไฟล์กำหนดค่าที่มีพา ธ ว่างเปล่าจากนั้นเสนอให้สร้างไฟล์ใหม่
Alan Snyder

0

หลังจาก MySQL เวอร์ชัน 5.7.18 แล้วจะไม่มีไฟล์การกำหนดค่าเริ่มต้นในไดเรกทอรีสนับสนุนไฟล์ ดังนั้นคุณสามารถสร้างไฟล์ my.cnf ด้วยตนเองในตำแหน่งที่ MySQL จะอ่านเช่น /etc/mysql/my.cnf และเพิ่มการกำหนดค่าที่คุณต้องการเพิ่มในไฟล์


0

ตัวเลือก rDefault ถูกอ่านจากไฟล์ต่อไปนี้ตามลำดับที่กำหนด: /etc/my.cnf /etc/mysql/my.cnf /usr/local/mysql/etc/my.cnf ~ / .my.cnf


0

ฉันใช้ MacOS Mojave (10.14.6) และเพื่อให้ MySQL รู้จักไฟล์ปรับแต่งของฉันฉันต้องวางไว้ใน /usr/local/mysql-5.7.26-macos10.14-x86_64/etc/my.cnf นอกจากนี้ฉันมีลิงก์สัญลักษณ์ที่ชี้ไปยัง /usr/local/@mysql/etc/my.cnf

ฉันพยายามปิด sql_mode = only_full_group_by และการตั้งค่าตัวเลือกนั้นในไฟล์กำหนดค่าเป็นวิธีเดียวที่ฉันจะได้รับการตั้งค่าให้คงอยู่ตลอดเซสชัน เนื้อหาของไฟล์ config คือ:

[mysqld]
sql_mode=NO_ENGINE_SUBSTITUTION

ฉันใช้การติดตั้งดั้งเดิมของ MySQL ไม่ใช่การตั้งค่า Homebrew


0

สำหรับ mysql 8.0.19 ในที่สุดฉันก็พบ my.cnf ที่นี่: /usr/local/opt/mysql/.bottle/etc ฉันคัดลอกมันไปที่ / usr / local / opt / mysql / และแก้ไขมัน จากนั้นฉันเริ่มบริการ mysql อีกครั้งมันใช้งานได้

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.