久久青草精品A片狠狠,日韩欧美视频一区二区,亚洲国码AV日韩,国产精品黄在

幫助中心 >  技術知識庫 >  云服務器 >  服務器教程 >  Linux 安裝MySQL 報錯file conflicts with file from package mariadb-libs-15.5.65-1.el7.x86_64

Linux 安裝MySQL 報錯file conflicts with file from package mariadb-libs-15.5.65-1.el7.x86_64

2024-11-25 16:11:49 4283

Linux 安裝MySQL 報錯file conflicts with file from package mariadb-libs-15.5.65-1.el7.x86_64


歡迎來到藍隊云技術小課堂,每天分享一個技術小知識。


問題:

Linux 安裝MySQL 報錯:

file /usr/share/mysql/charsets/README from install of MySQL-server-5.6.24-1.el6.x86_64 conflicts with file from package mariadb-libs-1:5.5.65-1.el7.x86_64


原因分析:

此報錯是說mysql安裝包與mariadb包沖突,那么那么只要刪除mariadb包即可。


解決方案:

查詢沖突的內容

rpm -qa|grep -i mariadb


刪除沖突的包

yum remove mariadb-libs-5.5.65-1.el7.x86_64


再次安裝測試,此報錯消失,安裝正常


附Linux安裝mysql的常見問題及解決辦法

一、數(shù)據(jù)庫安裝完畢,我們需要遠程連接,出現(xiàn)錯誤:1130 - Host 'xxx.xxx.xxx.xx' is not allowed to connect to this MySQL serverConnection closed by foreign host.

錯誤編號:1130

問題分析:MySQL 沒有開放遠程登錄的權限。

解決方法:

    請確認您填寫的數(shù)據(jù)庫服務器是否正確,并且授權你這臺 web 服務器進行連接,做如下操作:

開啟 MySQL 的遠程登陸帳號有兩大步:

1、確定服務器上的防火墻沒有阻止 3306 端口。

MySQL 默認的端口是 3306 ,需要確定防火墻沒有阻止 3306 端口,否則遠程是無法通過 3306 端口連接到 MySQL 的。

如果您在安裝 MySQL 時指定了其他端口,請在防火墻中開啟您指定的 MySQL 使用的端口號。

如果不知道怎樣設置您的服務器上的防火墻,請向您的服務器管理員咨詢。

2、增加允許遠程連接 MySQL 用戶并授權。

1)首先以 root 帳戶登陸 MySQL


在 Linux 主機中在命令提示行下輸入下面的命令。

# mysql -u root -p

Enter password:(輸入密碼)

2)創(chuàng)建遠程登陸用戶并授權

命令:grant all PRIVILEGES on testdb.* to shanhy@'123.123.123.123' identified by '123456';

上面的語句表示將 testdb 數(shù)據(jù)庫的所有權限授權給 shanhy 這個用戶,允許 shanhy 用戶在 123.123.123.123 這個 IP 進行遠程登陸,并設置 shanhy 用戶的密碼為 123456 。

下面逐一分析所有的參數(shù):

all PRIVILEGES 表示賦予所有的權限給指定用戶,這里也可以替換為賦予某一具體的權限,例如:select,insert,update,delete,create,drop 等,具體權限間用“,”半角逗號分隔。

testdb.* 表示上面的權限是針對于哪個表的,testdb 指的是數(shù)據(jù)庫,后面的 * 表示對于所有的表,由此可以推理出:對于全部數(shù)據(jù)庫的全部表授權為“*.*”,對于某一數(shù)據(jù)庫的全部表授權為“數(shù)據(jù)庫名.*”,對于某一數(shù)據(jù)庫的某一表授權為“數(shù)據(jù)庫名.表名”。

shanhy 表示你要給哪個用戶授權,這個用戶可以是存在的用戶,也可以是不存在的用戶。

123.123.123.123 表示允許遠程連接的 IP 地址,如果想不限制鏈接的 IP 則設置為“%”即可。

123456 為用戶的密碼。

使用:grant all PRIVILEGES on *.* to root@'%' with grant option;  //賦予任何主機訪問數(shù)據(jù)的權限

執(zhí)行了上面的語句后,再執(zhí)行下面的語句,方可立即生效。

flush privileges;

使用如上授權法操作或試用下面的改表法操作:

   1. mysql>use mysql; 

   2. mysql>update user set host = '%' where user = 'root'; 

   3. mysql>select host, user from user;

二、修改mysql配置文件,調整數(shù)據(jù)庫編碼和表名大小寫問題

1、修改配置

在[client]下增加

default-character-set=utf8

在[mysqld]下增加

init-connect='SET NAMES utf8'

character-set-server=utf8

collation-server=utf8_general_ci

#(注意linux下mysql安裝完后是默認:區(qū)分表名的大小寫,不區(qū)分列名的大小寫;lower_case_table_names = 0    0:區(qū)分大小寫,1:不區(qū)分大小寫)

lower_case_table_names=1

#(設置最大連接數(shù),默認為 151,MySQL服務器允許的最大連接數(shù)16384)

max_connections=1000

在[mysql]下增加

default-character-set=utf8

PS:這里面本沒有什么高深之處,重要一點是要注意版本,網上有不少的修改帖子,都是要在[mysqld]下加上 default-character-set=utf8 ,實際上5.0(>)版本以上是不支持的,如果你這樣修改, 你的mysql將不能啟動, 報一個錯,信息是"上次退出的時候沒有保存PID ??  " (大概是這個錯誤提示)

或是啟動時加上參數(shù):mysqld --default-character-set=utf8

或是編譯時加上參數(shù):./configure --width-charset=utf8

2、保存(如果你是使用vi來操作,則保存時會報錯,因為這個文件是只讀屬性,可以使用 wq! 強制保存退出)。重啟mysql即可。

三. 修改my.cnf配置文件,設置默認引擎為InnoDB,在[mysqld]下面最后增加下面兩句。

default-storage-engine = InnoDB

default_table_type = InnoDB

同時打開下面的內容:

innodb_data_home_dir = /var/lib/mysql/

innodb_data_file_path = ibdata1:10M:autoextend

innodb_log_group_home_dir = /var/lib/mysql/

# 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

四. 修改最大連接數(shù),默認是151 ,修改為500

#vi /etc/my.conf

[mysqld]

max_connections=500

驗證配置

show variables like 'max_con_%';

五. mysql不能創(chuàng)建函數(shù)問題解決

以下是引用片段:

Error Code : 1418

This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable)

(0 ms taken)

解決方法如下:

在my.ini(linux下為my.cnf)文件中 [mysqld] 標記后加一行內容為 log-bin-trust-function-creators=1

重啟mysql服務即可

六. mysql 1045錯誤

以下是引用片段:

在mysql服務器上進入mysql命令行

執(zhí)行 UPDATE user SET Password=PASSWORD('newpassword') where USER='root' 

執(zhí)行 FLUSH PRIVILEGES;

然后 service mysql restart 重啟mysql服務。

 七. centos 安裝mysql沖突解決方法


Preparing...                ########################################### [100%]


        file /usr/share/mysql/charsets/README from install of MySQL-server-community-5.1.44-1.rhel5.i386 conflicts with file from package mysql-libs-5.1.61-4.el6.i686


        file /usr/share/mysql/charsets/Index.xml from install of MySQL-server-community-5.1.44-1.rhel5.i386 conflicts with file from package mysql-libs-5.1.61-4.el6.i686


        file /usr/share/mysql/charsets/armscii8.xml from install of MySQL-server-community-5.1.44-1.rhel5.i386 conflicts with file from package mysql-libs-5.1.61-4.el6.i686


        file /usr/share/mysql/charsets/ascii.xml from install of MySQL-server-community-5.1.44-1.rhel5.i386 conflicts with file from package mysql-libs-5.1.61-4.el6.i686   

解決辦法:

卸載mysql:rpm -e --nodeps mysql-libs-5.1.*

八. mysql 5.6 安裝后登錄不了問題

error:you must SET PASSWORD before executing this statement

處理方法:

默認root密碼是空的,樓主直接 mysql進去,然后進去改啊,例如:

mysql> SELECT 1;

ERROR 1820 (HY000): You must SET PASSWORD before executing this statement

mysql> SET PASSWORD = PASSWORD('new_password');

Query OK, 0 rows affected (0.01 sec)

九、mysql5.6 查看默認密碼

# more .mysql_secret

# more /root/.mysql_secret

# The random password set for the root user at Wed Jun 26 18:23:34 2013 (local time): x7YrI4bP

十、SQL Error 1366 sqlstate HY000

解決方案:

1. 參考Mysql 官方網站 http:///dev.mysql.com/doc/refman/5.1/en/gone-away.html

2. 修改my.cnf for linux [mysqld] max_allowed_packet = 32M

當MySQL客戶端或mysqld服務器收到大于max_allowed_packet字節(jié)的信息包時,將發(fā)出“信息包過大”錯誤,并關閉連接。對于某些客戶端,如果通信信息包過大,在執(zhí)行查詢期間,可能會遇到“丟失與MySQL服務器的連接”錯誤。

客戶端和服務器均有自己的max_allowed_packet變量,因此,如你打算處理大的信息包,必須增加客戶端和服務器上的該變量。一般情況下,服務器默認max-allowed-packet為1MB

十一、mysql 1030  出現(xiàn) Got error 28 from storage engine 解決方法

錯誤描述:

ERROR 1030 (HY000): Got error 28 from storage engine  

錯誤原因:

臨時空間不夠,無法執(zhí)行此SQL語句  

解決方法:

將tmpdir指向一個硬盤空間很大的目錄即可

1、修改 my.cnf 配置文件,在 datadir 下面增加或修改 tmpdir = 臨時文件目錄位置

2、修改/etc/rc.d/init.d/mysql 啟動文件,增加或修改 tmpdir = 臨時文件目錄位置

臨時文件一般我們放在 datadir 下,如:tmpdir = /home/data/mysql_data/tmp


藍隊云官網上擁有完善的技術支持庫可供參考,大家可自行查閱,更多技術問題,可以直接咨詢。同時,藍隊云整理了運維必備的工具包免費分享給大家使用,需要的朋友可以直接咨詢。

更多技術知識,藍隊云期待與你一起探索。


提交成功!非常感謝您的反饋,我們會繼續(xù)努力做到更好!

這條文檔是否有幫助解決問題?

非常抱歉未能幫助到您。為了給您提供更好的服務,我們很需要您進一步的反饋信息:

在文檔使用中是否遇到以下問題: