本文目錄一覽:
- 1、ubuntu 怎麼源碼安裝mysql
- 2、centos7怎樣安裝mysql伺服器
- 3、如何在centos7中裝mysql
- 4、Linux下如何使用源碼安裝mysql且開啟分區 mysql:mysql-5.1.61.tar.gz 求詳細步驟~
ubuntu 怎麼源碼安裝mysql
1.下載源碼包
2.解壓包
tar -zxvf mysql-5.6.33.tar.gz
3.安裝必要依賴
sudo apt-get install make bison g++ build-essential libncurses5-dev cmake
4.進入安裝包目錄,配置MySQL安裝參數 //源碼安裝最大的好處就是可以自定義參數,制定安裝目錄,方便管理
cmake -DCMAKE_INSTALL_PREFIX=[指定MySQL安裝的目錄]/usr/local/mysql -DSYSCONFDIR=/etc -DMYSQL_UNIX_ADDR=/tmp/mysql.sock -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_DATADIR=[指定MySQL的數據存放目錄如:]/usr/local/mysql/data -DMYSQL_USER=mysql -DWITH_DEBUG=0
make -j4 #-j數字 表示以多核心運行編譯
make install #安裝
5. 常用命令軟連接,設置環境變數
sudo ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.18
sudo ln -s /usr/local/mysql/bin/mysql /usr/bin
sudo ln -s /usr/local/mysql/bin/mysqladmin /usr/bin
6.初始化資料庫
sudo /usr/local/mysql/scripts/mysql_install_db –basedir=/usr/local/mysql –datadir=/usr/local/mysql/data –user=mysql
7.啟動MySQL伺服器
sudo /usr/local/mysql/bin/mysqld start
#如果啟動不了,考慮編譯安裝時自定義數據存放目錄,所以導致mysqld找不到對應的目錄
解決: vi /usr/local/mysql/bin/mysqld
修改datadir = [指定MySQL的數據存放目錄如:] /usr/local/mysql/data
保存退出,再次啟動 sudo /usr/local/mysql/bin/mysqld start #OK 搞定
8. 啟動成功後創建root用戶的密碼
/usr/local/mysql/bin/mysqladmin -u root password ‘新密碼’
9.啟動MySQL端
/usr/local/mysql/bin/mysql -u root -p
輸入密碼
10.設置環境變數
vi /home/個人目錄/.bashrc 或者 vi /root/.bashrc
#在後面添加這段代碼
export PATH=”$PATH:/home/sy/lnmp/mysql/bin”
#重啟電腦ok
#若不想重啟電腦,僅限當次有效(重啟失效)
#執行命令
export PATH=$PATH:/usr/local/mysql/bin
mysql –version //測試
centos7怎樣安裝mysql伺服器
本人博客供參考
網頁鏈接
下載mysql源安裝包shell wget
安裝mysql源shell yum localinstall mysql57-community-release-el7-8.noarch.rpm
檢查mysql源是否安裝成功
yum repolist enabled | grep 「mysql.-community.」
安裝MySQL
yum install mysql-community-server
啟動MySQL服務
shell systemctl start mysqld
查看MySQL的啟動狀態
shell systemctl status mysqld
開機啟動
shell systemctl enable mysqld
shell systemctl daemon-reload
修改root本地登錄密碼
mysql安裝完成之後,在/var/log/mysqld.log文件中給root生成了一個默認密碼。通過下面的方式找到root默認密碼,然後登錄mysql進行修改:
shell grep 『temporary password』 /var/log/mysqld.log
shell mysql -uroot -p
mysql ALTER USER 『root』@』localhost』 IDENTIFIED BY 『MyNewPass4!』;
或者:
mysql set password for 『root』@』localhost』=password(『MyNewPass4!』);
注意:mysql5.7默認安裝了密碼安全檢查插件(validate_password),默認密碼檢查策略要求密碼必須包含:大小寫字母、數字和特殊符號,並且長度不能少於8位。否則會提示ERROR 1819 (HY000): Your password does not satisfy the current policy requirements錯誤
添加遠程登錄用戶
默認只允許root帳戶在本地登錄,如果要在其它機器上連接mysql,必須修改root允許遠程連接,或者添加一個允許遠程連接的帳戶,為了安全起見,我添加一個新的帳戶:
mysql GRANT ALL PRIVILEGES ON . TO 『yangxin』@』%』 IDENTIFIED BY 『Yangxin0917!』 WITH GRANT OPTION;
以上部分個人實踐過,以下內容待實踐
資料庫存emoji 表情問題
mysql SHOW VARIABLES WHERE Variable_name LIKE 『character_set_%』 OR Variable_name LIKE 『collation%』;
+————————–+——————-+
| Variable_name | Value |
+————————–+——————-+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| collation_connection | utf8_general_ci |
| collation_database | latin1_swedish_ci |
| collation_server | latin1_swedish_ci |
+————————–+——————-+
10 rows in set (0.02 sec)
可以看到我的mysql版本是5.7的,utf8mb4有一個使用限制,mysql版本必須是5.5以上,大家需要注意,我目前用的ubuntu系統是16.04的。當前mysql的字符集配置如上表,我們的目的是更改成utf8mb4。
3.找到mysql的配置文件,可用命令
sudo find / -name my.cnf
我的配置文件位置如下,個別的位置有所不同
/etc/mysql/mysql.conf.d/mysqld.cnf
4.修改配置文件
在原文中添加以下內容:
[client]
default-character-set = utf8mb4
[mysql]
default-character-set = utf8mb4
[mysqld]
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
init_connect=』SET NAMES utf8mb4』
原文件中無「[client]」和「[mysql]」,需要手動添加上。
……
Here is entries for some specific programs
The following values assume you have at least 32M ram
[client]
default-character-set = utf8mb4
[mysql]
default-character-set = utf8mb4
[mysqld_safe]
socket = /var/run/mysqld/mysqld.sock
nice = 0
[mysqld]
#
* Basic Settings
#
user = mysql
pid-file = /var/run/mysqld/mysqld.pid
socket = /var/run/mysqld/mysqld.sock
port = 3306
basedir = /usr
datadir = /var/lib/mysql
tmpdir = /tmp
lc-messages-dir = /usr/share/mysql
skip-external-locking
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
init_connect=』SET NAMES utf8mb4』
#
Instead of skip-networking the default is now to listen only on
……
5.重啟mysql服務
sudo service mysql restart
6.查看結果
mysql SHOW VARIABLES WHERE Variable_name LIKE 『character_set_%』 OR Variable_name LIKE 『collation%』;
ERROR 2006 (HY000): MySQL server has gone away
No connection. Trying to reconnect…
Connection id: 3
Current database: * NONE *
+————————–+——————–+
| Variable_name | Value |
+————————–+——————–+
| character_set_client | utf8mb4 |
| character_set_connection | utf8mb4 |
| character_set_database | utf8mb4 |
| character_set_filesystem | binary |
| character_set_results | utf8mb4 |
| character_set_server | utf8mb4 |
| character_set_system | utf8 |
| collation_connection | utf8mb4_unicode_ci |
| collation_database | utf8mb4_unicode_ci |
| collation_server | utf8mb4_unicode_ci |
+————————–+——————–+
10 rows in set (0.00 sec)
如何在centos7中裝mysql
運行mysql.server腳本,mysql.server腳本通過調用mysqld_safe啟動伺服器,該腳本可以通過參數start和stop指定啟動還是關閉。mysql.server腳本在MySQL安裝目錄下的share/mysql目錄中,如果是採用源碼安裝的MySQL,則可以在support-files目錄里找到。如果想使用mysql.server,則必須把它複製到合適的運行級別目錄中。
如上配置之後,就可以利用以下命令啟動和關閉MySQL實例。
執行命令:
service mysqld start就啟動了。
Linux下如何使用源碼安裝mysql且開啟分區 mysql:mysql-5.1.61.tar.gz 求詳細步驟~
1.實現linux下純手動MySQL源碼安裝,首先要下載MySQL的源碼,我下載的是MySQL-5.0.87.tar.gz 2.解壓tar –xvf MySQL-5.0.87.tar.gz 3.進入MySQL-5.0.87 4.檢測環境並指定安裝目錄:./configure –prefix=/usr/local/MySQL 檢測出來缺什麼就安裝什麼。我裝的時候居然連gcc和g++都沒有,沒有編譯器的話就要直接下載rpm包(已編譯好的二進位文件)再安裝到系統。 如下是安裝gcc的命令(要先去下載這個包,這個地址有比較多的rpm包下載): sudo rpm -ivh gcc-4.1.2_20070115-0.11.i586.rpm 安裝這些rpm包的過程中有些是已安裝的,或者是自己依賴自己導致安裝不了,反正安裝不了就用強制安裝並忽略依賴的命令 sudo rpm -ivh gcc-4.1.2_20070115-0.11.i586.rpm –-force –nodeps 可能進過安裝一系列的rmp包後,終於完成了環境檢測。我大概裝了10+個的rmp包才完成。。杯具啊 5.編譯:make 6.安裝:sudo make install 7.實現linux下純手動MySQL源碼安裝中要進行配置。首先可以看到安裝完的目錄如下 在share/MySQL下打命令:ls –l | grep my- 出來的都是MySQL的配置文件,按照需要選擇其中一個拷到/etc下命名為my.cnf /etc/my.cnf是MySQL默認讀的配置文件的路徑 8.修改var的可寫許可權。這是MySQL的資料庫數據文件存放的位置,因為用當前用戶來運行MySQL的後台程序可能沒有這個目錄的可寫許可權。 chmod 777 ./var –r 9.配置系統環境變數,使得可以直接執行MySQL的程序 系統的環境變數是放在/etc/profile下的,而用戶的環境變數是放在用戶的根目錄下的.bashrc下 (1) /etc/profile的配置: PATH=/usr/local/MySQL/bin:$PATH PATH=/usr/local/MySQL/libexec:$PATH export PATH其中/usr/local/mydql/bin是MySQL主要的可執行程序的目錄,而libexec是放MySQL的後台主程序MySQLd的 (2).bashrc的配置: set PATH=/usr/local/MySQL/bin:$PATH set PATH=/usr/local/MySQL/libexec:$PATH export PATH這裡注意.bashrc裡面是要加個set的。配置完後重登錄就可以生效了 10.在啟動MySQLd之前要先初始化它,執行MySQL_install_db 11.啟動MySQLd,直接打MySQLd就可以了,因為之前配置過系統環境變數了 12.直接MySQL進入MySQL的命令行控制。默認是以當前用戶名登錄的,默認root是沒有密碼的 13.設置root的密碼:MySQLadmin –u root password 『123456』 14.以root身份登錄:MySQL –uroot –p 15.設置遠程登錄資料庫。用戶創建後默認是只能在本地登錄的。 update user set Host=’%』 where user=『kuncai’; 這句是將kuncai這個用戶的允許登錄的地址改成任意,但不包括本地。也就是說這樣kuncai這個用戶就無法在本地登錄了,只能遠程登錄。 只有root用戶才能執行這句,所以要先以root用戶登錄到本地資料庫才行。 flush privileges; 要再執行這句刷新緩存才能生效。以上的相關內容就是對linux下純手動MySQL源碼安裝的介紹,望你能有所收穫。 感謝你們能看到這些,如果大家有興趣開個自己的-淘-寶-網-店,小成本的進行-創-業-嘗試,可以加我Q1300-855-633,進行諮詢聯繫
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/285090.html