- 1、詳細講解Linux環境下MySQL 5.1安裝步驟
- 2、如何安裝mysql,Linux下mysql安裝
- 3、《從0到1 最詳細MySQL安裝流程(Linux環境)
- 4、linux怎麼安裝mysql數據庫
1、下載MySQL免安裝版/二進制版軟件
(不用編譯)
文件格式:MYSQL-VERSION-OS.tar.gz
2、創建MySQL組,建立MySQL用戶並加入到mysql組中
(不同版本的Unix中,groupadd和useradd的語法可能會稍有不同。)
#groupadd
mysql
#useradd
-g
mysql
mysql
3、進入目錄/usr/local,解壓縮免安裝版,並在此目錄中建立名為mysql的軟鏈接
#cd
/usr/local
#gunzip
/path/to/MYSQL-VERSION-OS.tar.gz
|
tar
xvf
–
(該命令會在本目錄下創建一個名為MYSQL-VERSION-OS的新目錄。)
(使用GNU
tar,則不再需要gunzip。你可以直接用下面的命令來解包和提取分發:
#
tar
zxvf
/path/to/mysql-VERSION-OS.tar.gz)
#ln
-s
MYSQL-VERSION-OS
mysql
4、添加MySQL配置文件
如果你想要設置一個選項文件,使用support-files目錄中的一個作為模板。在這個目錄中有4個模板文件,是根據不同機器的內存定製的。
#cp
support-files/my-medium.cnf
/etc/my.cnf
(可能你需要用root用戶運行這些命令。)
5、設定目錄訪問權限,用mysql_install_db創建MySQL授權表初始化,並設置mysql,root帳號訪問權限
#cd
mysql
#chown
-R
mysql
.
#chgrp
-R
mysql
.
#scripts/mysql_install_db
–user=mysql
#chown
-R
root
.
#chown
-R
mysql
data
(注意以上命令中的”
.
“符號不能少。)
6、運行MySQL
#bin/mysqld_safe
–user=mysql
(如果沒有問題的話,應該會出現類似這樣的提示:
[1]
42264
#
Starting
mysqld
daemon
with
databases
from
/usr/local/mysql/var
如果出現
mysql
ended這樣的語句,表示Mysql沒有正常啟動,你可以到log中查找問題,Log文件的通常在/etc/my.cnf中配置。
大多數問題是權限設置不正確引起的。
)
7、設置root密碼。默認安裝密碼為空,為了安全你需要修改密碼
#/usr/local/mysql/bin/mysqladmin
-uroot
password
yourpassword
8、拷貝編譯目錄的一個腳本,設置開機自動啟動
#cp
support-files/mysql.server
/etc/rc.d/init.d/mysqld
#chmod
700
/etc/init.d/mysqld
#chkconfig
–add
mysqld
#chkconfig
–level
345
mysqld
on
9、啟動mysqld服務
#service
mysqld
start
10、查看3306端口是否打開。要注意在防火牆中開放該端口
#netstat
-atln
免安裝版/二進制版安裝基本命令概述:
shell
groupadd
mysql
shell
useradd
-g
mysql
mysql
shell
cd
/usr/local
shell
gunzip
/PATH/TO/MYSQL-VERSION-OS.tar.gz
|
tar
xvf
–
shell
ln
-s
FULL-PATH-TO-MYSQL-VERSION-OS
mysql
shell
cd
mysql
shell
chown
-R
mysql
.
shell
chgrp
-R
mysql
.
shell
scripts/mysql_install_db
–user=mysql
shell
chown
-R
root
.
shell
chown
-R
mysql
data
shell
bin/mysqld_safe
–user=mysql
一、下載編譯安裝
#cd /usr/local/src/
#wget
#tar –xzvf
mysql-5.1.38.tar.gz ../software/
#./configure
–prefix=/usr/local/mysql
//MySQL安裝目錄
–datadir=/mydata //數據庫存放目錄
–with-charset=utf8 //使用UTF8格式
–with-extra-charsets=complex //安裝所有的擴展字符集
–enable-thread-safe-client
//啟用客戶端安全線程
–with-big-tables //啟用大表
–with-ssl //使用SSL加密
–with-embedded-server //編譯成embedded MySQL library (libmysqld.a),
–enable-local-infile //允許從本地導入數據
–enable-assembler
//彙編x86的普通操作符,可以提高性能
–with-plugins=innobase //數據庫插件
–with-plugins=partition //分表功能,將一個大表分割成多個小表
#make make
install //編譯然後安裝
二、新建用戶和組
#groupadd mysql //建MySQL組
#useradd -g mysql -s /sbin/nologin mysql //建MySQL用戶屬於MySQL組
三、配置
#chown -R mysql:mysql /usr/local/mysql/ 把MySQL目錄的權限給MySQL用戶和組
#cp /usr/local/src/software/ mysql-5.1.38/support-files/my-medium.cnf
/etc/my.cnf //拷入配置文件my.cnf
#/usr/local/mysql/bin/mysql_install_db
–user=mysql //用MySQL來初始化數據庫
#chown -R mysql:mysql /usr/local/mysql/var/
//把初始化的數據庫目錄給MySQL所有者
#/usr/local/mysql/bin/mysqld_safe –user=mysql
//啟動MySQL
四、其他
#cp /usr/local/src/software/
mysql-5.1.38/support-files/mysql.server /etc/init.d/mysqld
#chmod 755
/etc/init.d/mysqld
#chkconfig –add mysqld
#chkconfig mysqld on
#service mysqld restart
五、登陸測試
#cd
/usr/local/mysql/bin
#mysql
show databases;
#
MySQL安裝結束
linux下mysql配置方法
在linux中mysql的配置文件路徑在/usr/share/mysql下
有:my-huge.cnf 、my-large.cnf、 my-medium、my-small.cnf這些文件
根據需要打開這些文件中的一個:
在文件中找到[mysqld]
在下這行下加入datadir=FILEPATH /*這個路徑為數據庫存放的路徑*/
然後保存文件
在shell中輸入
#cp my-***.cnf /etc
#cd /etc
#mv my.cnf my.cnf.bak
/*把系統以前的mysql配置文件備份*/
#mv my-***.cnf my.cnf
#service mysqld start
/*啟動mysql服務*/
#ntsysv /*配置mysql自啟動,在彈出的窗口中把mysqld這項服務用空格選中,最後確定保存*/
查看服務器是否有自帶的MySQL,如果有可以直接使用,如果自帶的版本比較低,可以刪除然後安裝自己想要的版本 (在安裝新版本MySQL之前,需要卸載服務器自帶的MySQL包和MySQL數據庫分支mariadb的包)
1、rpm -qa|grep mysql — 查詢服務器是否有mysql,如有,則執行下面的語句進行刪除
2、rpm -qa |grep mariadb — 查詢服務器是否有mariadb,有則執行第三步進行刪除
3、rpm -e –nodeps 要刪除的文件名( nodeps表示強制刪除 )
小貼士1: 如果使用rz命令時提示找不到命令,直接執行: yum -y install lrzsz 則可以在線下載。
命令: rz 或者rz -be
格式: rz -be 選擇需要上傳的文件
批量或者單個上傳文件,通過ZMODEM協議,除此之外,還可以通過ftp或者sftp進行上傳
按照下面的命令順序執行,文件名修改成你壓縮後的文件名稱即可
啟動命令: systemctl start mysql
報錯信息: Job for mysqld.service failed because the control process exited with error code. See “systemctl status mysqld.service” and “journalctl -xe” for details.
根據報錯信息執行 : systemctl status mysqld.service” 或者 “journalctl -xe”命令查看報錯詳情,發現報錯信息中存在: Data Dictionary upgrade from MySQL 5.7 in progress 。
說明是因為新版本和之前服務器自帶的版本對應的包存在衝突,刪除對應的衝突目錄即可,執行: rm -rf /var/lib/mysql/*(執行刪除命令的時候要看清楚哦)
systemctl start mysql — 啟動服務器
第一次成功啟動MySQL會被設置默認一個密碼,通過以下命令查看並進行登錄。
1、查看第一次啟動的臨時密碼 :grep password /var/log/mysqld.log
2、連接到服務器 : mysql -u root -p 回車,然後輸出密碼
3、第一次連接會強制你必須修改連接密碼 ,可以使用以下的語句進行修改密碼:
ALTER USER root@localhost IDENTIFIED WITH caching_sha2_password BY ‘123456’; (MySQL8.x適合使用這個語句)
UPDATE USER SET PASSWORD=PASSWORD(‘你的密碼’) WHERE USER=’root’; (MySQL5.x版本的修改)
1. 安裝MySQL數據庫
先從MySQL官網下載MySQL,然後進入所下載的安裝文件所在目錄,運行如下命令進行安裝,其中MySQL-server-community-5.1.56-1.rhel5.i386.rpm為剛剛下載的MySQL數據庫服務器的rpm包,然後使用/etc/rc.d/init.d/mysqlrestart命令重啟MySQL服務:
[root@localhost ~]# rpm -ivh MySQL-server-community-5.1.56-1.rhel5.i386.rpm
[root@localhost ~]# /etc/rc.d/init.d/mysql restart
Shutting down MySQL..[確定]
Starting MySQL..[確定]
2. 配置MySQL數據庫字符集
備註:配置MySQL數據庫字符集的目的是方便的使用數據庫,無需在每次連接的時候都要臨時設置數據庫字符集的,個人不建議採用這種方法,真正的工程項目都應該在連接數據庫時臨時設置數據庫字符集,如此才便於系統的移植,而且又不會影響數據庫服務器中的其他數據庫的使用!
安裝完成之後,需要配置MySQL的字符集配置,首先需要查找MySQL的配置文件的位置,由於MySQL的配置文件名是以.cnf結尾的,因此可用如下命令進行查找:
[root@localhost ~]# find / -iname ‘*.cnf’ -print
/usr/share/mysql/my-large.cnf
/usr/share/mysql/my-medium.cnf
/usr/share/mysql/my-innodb-heavy-4G.cnf
/usr/share/mysql/my-huge.cnf
/usr/share/mysql/my-small.cnf
/usr/share/doc/MySQL-server-community-5.1.56/my-large.cnf
/usr/share/doc/MySQL-server-community-5.1.56/my-medium.cnf
/usr/share/doc/MySQL-server-community-5.1.56/my-innodb-heavy-4G.cnf
/usr/share/doc/MySQL-server-community-5.1.56/my-huge.cnf
/usr/share/doc/MySQL-server-community-5.1.56/my-small.cnf
/etc/pki/tls/openssl.cnf
輸入完命令“find / -iname ‘*.cnf’-print”回車後,屏幕便顯示搜索到的MySQL配置文件,然後拷貝my-large.cnf、my-medium.cnf 、my-innodb-heavy-4G.cnf 、my-huge.cnf、my-small.cnf中任意的一個到/etc目錄下,並命名為my.cnf,其命令如下所示:
[root@localhost ~]# cp /usr/share/mysql/my-medium.cnf /etc/my.cnf
[root@localhost ~]# vi /etc/my.cnf
然後,使用vi編輯器修改/etc/my.cnf文件,在[client]下添加: “default-character-set=gb2312”;在[mysqld]下添加:“default-character-set=gb2312”。如下所示:
# The following options will be passed to all MySQL clients
[client]
default-character-set=gb2312
#password = your_password
port = 3306
socket = /var/lib/mysql/mysql.sock
# Here follows entries for some specific programs
# The MySQL server
[mysqld]
default-character-set=gb2312
port = 3306
socket = /var/lib/mysql/mysql.sock
skip-locking
key_buffer_size = 16M
max_allowed_packet = 1M
table_open_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
按一下Esc鍵,輸入“:wq”後回車保存配置文件,輸入“/etc/rc.d/init.d/mysqlrestart”重啟MySQL服務,如下所示:
[root@localhost ~]# /etc/rc.d/init.d/mysql restart
Shutting down MySQL..[確定]
Starting MySQL..[確定]
最後,我們來驗證MySQL服務器配置是否成功,首先登錄MySQL,輸入“mysql –uroot -p”回車,系統提示輸入密碼,登錄成功後進入MySQL命令模式,如下所示:
[root@localhost ~]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.1.56-community-log MySQL Community Server (GPL)
Copyright (c) 2000, 2010, 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
在MySQL命令模式下分別輸入“show variables like’collation_%’;”、“show variables like ‘character_set_%’;”回車後顯示字符集設置,如下所示:
mysql show variables like ‘collation_%’;
+———————-+——————-+
| Variable_name | Value |
+———————-+——————-+
| collation_connection | gb2312_chinese_ci |
| collation_database | gb2312_chinese_ci |
| collation_server | gb2312_chinese_ci |
+———————-+——————-+
3 rows in set (0.05 sec)
mysql show variables like ‘character_set_%’;
+————————–+—————————-+
| Variable_name | Value |
+————————–+—————————-+
| character_set_client | gb2312 |
| character_set_connection | gb2312 |
| character_set_database | gb2312 |
| character_set_filesystem | binary |
| character_set_results | gb2312 |
| character_set_server | gb2312 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+————————–+—————————-+
8 rows in set (0.00 sec)
mysql
根據以上查詢結果可知我們設置的MySQL數據庫配置信息已經生效,至此完成MySQL的服務器的安裝與配置。
3.關於MySQL數據庫的一些注意事項
3.1 遠程連接mysql速度慢
解決方法:
在MySQL服務器的配置(/etc/my.cnf)中增加一個如下配置後速度飛快。
[mysqld]
skip-name-resolve
備註:這樣就能禁用DNS解析,連接速度會快很多。不過,這樣的話就不能在MySQL的授權表中使用主機名了而只能用ip格式。
3.2 重啟數據庫後,發現無需密碼(或者任何密碼)即可以連接
解決方法:
檢查你的MySQL配置文件(/etc/my.cnf)中是不是多了一條語句:“skip-grant-tables”,刪除(注釋)該語句,重新配置MySQL密碼,再次重啟MySQL服務即可!
備註:若使用skip-grant-tables系統將對任何用戶的訪問不做任何訪問控制,但可以用 mysqladmin flush-privileges或mysqladmin reload來開啟訪問控制;默認情況是show databases語句對所有用戶開放,如果mysql服務器沒有開遠程帳戶,就在/etc/my.cnf裡面加上skip-grant-tables。
原創文章,作者:R6ILV,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/126363.html