Mysql

mysql 5.1 – 未知變數 ‘basedir=c:/mysql/’

  • October 31, 2013

我最近將預設埠(3306)更改為 mysql 的另一個埠。

我通過更改 my.ini 文件並重新啟動伺服器來做到這一點。

沒有進行任何其他更改。

使用 GUI 連接時沒有問題。

當我嘗試使用命令提示符(mysql -u root -p)時,出現以下錯誤。

mysql: 未知變數 ‘basedir=c:/mysql/’

Windows Server 2008 R2

MySQLServer 5.1上執行

my.ini 文件資訊(刪除了一些註釋行)

$$ client $$

埠=新埠

##MySQL 伺服器

安裝目錄的路徑。所有路徑通常都相對於此進行解析。

basedir=“C:/MySQL/”

#數據庫根路徑

datadir=“C:/MySQL/”

#設置預設字元集。

預設字元集=latin1

$$ mysqld $$

#password=your_password

port = new_port

#socket = /tmp/mysql.sock key_buffer_size

= 384M

max_allowed_pa​​cket = 1M

table_open_cache = 512 sort_buffer_size

=4M

read_buffer_size = 2M

read_rnd_buffer_size = 8M

myisam_sort_buffer_size = 64M

thread_cache_size = 8 query_cache_size=

201M'2

#嘗試CPU數對於執行緒
並發執行緒 並發= 8

#安裝目錄的路徑。所有路徑通常都相對於此進行解析。

basedir = “C:/MySQL/”

#數據庫根路徑

datadir = “C:/MySQL/Data/”

#default -storage-engine=MyISAM時創建新表時將使用的預設儲存引擎

**# MySQL 伺服器將允許****的最大並發會話數。**這些連接之一將保留給具有

# SUPER 權限的使用者,以允許管理員登錄,即使

已達到 # 連接限制。

最大連接數=160

# 所有執行緒的打開表數。增加這個值

# 會增加 mysqld 需要的文件描述符的數量。

# 因此,您必須確保在**# 部分**

的變數“open-files-limit”中將打開文件的數量設置為至少 4096

$$ mysqld_safe $$

表記憶體=320

# 內部(記憶體中)臨時表的最大大小。如果表

# 增長大於此值,它會自動轉換為基於磁碟

# 的表 此限制適用於單個表。可以有很多

#。

tmp_table_size=205M

#僅當您想使用 InnoDB 表時才啟用此選項。

skip-innodb

#不允許對mysql.user 表沒有寫權限的使用者創建新使用者。

safe-user-create

#Start 沒有授權表。這使所有使用者都可以完全訪問所有表!

skip-grant-tables

#設置預設字元集。

預設字元集=LATIN1

# 需要在 1 和 2^32 - 1 之間的唯一 id

# 如果沒有設置 master-host,則預設為 1 # 但如果省略 server-id = 1

,則不會作為 master

#如果在 SQL-Create 語句中沒有定義特定的儲存引擎/表類型, 則將使用預設類型。

default-storage-engine=myisam

#僅當您想使用 InnoDB 表時才啟用此選項。

skip-innodb

#允許的同時客戶端數。

max_connections=160

#所有​​執行緒的打開表數。

table_cache=320

#如果記憶體中的臨時表超過這個大小,MySQL會自動將其轉換 為磁碟上的MyISAM表。

tmp_table_size=205M

#不允許對mysql.user 表沒有寫權限的使用者創建新使用者。

safe-user-create

#Start 沒有授權表。這使所有使用者都可以完全訪問所有表!

跳過授予表

#設置預設字元集。

預設字元集=LATIN1

感謝您發布 my.ini

問題[client]:您在該部分下有 basedir 和 datadir

basedir並且datadir是僅伺服器選項,而不是客戶端程序選項。

解決方案:將它們從該[client]部分下方刪除,您就可以開始了!

完成後,這

[client]
port= new_port

##The MySQL server
Path to installation directory. All paths are usually resolved relative to this.
basedir="C:/MySQL/"
#Path to the database root
datadir="C:/MySQL/"
#Set the default character set.
default-character-set=latin1

現在應該是這樣的:

[client]
port= new_port

試一試 !!!

引用自:https://dba.stackexchange.com/questions/52597