centos7mysql編譯安裝
centos7相比於centos6版本的,有些命令上的差異。不過,在centos7上安裝mysql教程,網路上還是有的。可以查。
mysql的遠程訪問,一個是資料庫上的授權
一個是伺服器與伺服器直接的防火牆設置,這2個都解決了,就能實現遠程訪問呀
『貳』 centos7 編譯安裝mysql5.7 bison出錯
#安裝mysql 依賴
[html] view plain
yum -y install gcc cmake make gcc-c++ ncurses-devel openssl-devel bison ncurses chkconfig lsof
#刪除mariadb相關包
#列出所有被安裝的rpm package
#刪除列表中的包
[html] view plain
rpm -qa | grep mariadb
rpm -e mariadb-server-5.5.44-2.el7.centos.x86_64
rpm -e mariadb-5.5.44-2.el7.centos.x86_64
rpm -e --nodeps mariadb-libs-5.5.
『叄』 centos7怎麼安裝mysql並設置密碼
進入mysql使用一下語句:
grant select,insert,update,delete,file on *.* to text@"%" identified by "123456";
意思是創建 text這個賬戶密碼為123456 擁有所有遠程連接許可權(%表示所有,也可改成相應的ip或域名),並擁有對所有庫的 插入,更新,刪除許可權。
『肆』 centos7怎麼安裝mysql
1、Centos 7 默認不支持mysql (都是因為錢),所以centos 7默認支持的是mariadb
何為mariadb?
MariaDB資料庫管理系統是MySQL的一個分支,主要由開源社區在維護,採用GPL授權許可 MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能輕松成為MySQL的代替品。在存儲引擎方面,使用XtraDB來代替MySQL的InnoDB。 MariaDB由MySQL的創始人Michael Widenius主導開發,他早前曾以10億美元的價格,將自己創建的公司MySQL AB賣給了SUN,此後,隨著SUN被甲骨文收購,MySQL的所有權也落入Oracle的手中。MariaDB名稱來自Michael Widenius的女兒Maria的名字。
說到這,我個人強烈推薦大家開始學習MariaDB,當然由於我們一些項目還是要用mysql的,所以不能放棄。真不難學。
接下來 我講一下centos 7對mysql的安裝過程
1、如果一定要在centos 7上安裝mysql ,需要卸載MariaDB,否則會沖突。
2、執行這個命令:rpm -qa | grep mariadb
3、這時會出現一些列表,都是mariadb的包,接下來我們要幹掉
4、執行如下命令rpm -e –nodeps mariadb-libs-XXXXX.x86_64 (注意我這里的xxxx, 要根據第三步出現的列表 ,挨個干)
5、幹完後,就可以安裝mysql了。
6、去度娘搜索mysql的rpm包,一大把。我用的是5.6.22 .(找不到的,問我要)
ww
這里需要安裝 至少2個,1個是mysql-server-xxxx.rpm (這個就是服務端), 還有一個是mysql-client-xxxx.rpm(這個是客戶端,不想裝?不裝的話你沒法初始化root密碼,求懂)
7、執行 rpm -ivh 「上面兩個文件名 」
8、這樣就裝好了。
9、然後 執行:service mysql start (如果OK,說明裝好了)
10、再然後執行:service mysql stop (不要問為什麼,因為默認root沒有密碼,你進不去,所以接下來我們要繞過密碼登錄)
11、執行這個命令:mysqld_safe –user=mysql –skip-grant-tables –skip-networking & mysql -u root mysql (也就是,老子不用密碼直接登錄,這時mysql服務必須關閉狀態)
12、然後執行這個命令:UPDATE user SET Password=PASSWORD(『XXXXX』) where USER=』root』; 這里就是對root賬號初始化密碼,xxx自行改,不要忘了。忘掉的話就要用第11步初始化(誰說沒有密碼就不能進mysql?)
13、然後執行 flush privileges; (注意不要忘記最後的分號,必須有,不要問為什麼)
14、然後輸入quit; 退出mysql客戶端。
15、重新啟動mysql,命令:service mysql start
16、然後用root賬號登錄 命令:mysql -u root -p (接下來會提示你輸入密碼,此時屏幕不可見,不要以為死機了)
17、這時隨便執行一個sql,譬如 show databases;
18、這時會報錯,大約是You must SET PASSWORD before executing this statement .其實就是我們常見的:第一次登錄需要改密碼,
19、那我們就改一改吧,反正不會懷孕
20、執行 SET PASSWORD = PASSWORD(『xxxx』); 注意分號,也可以把密碼跟上面搞得一樣。
21、然後再去執行 一些sql,看看對不對。對的話quit;
22、最後,我們最好吧mysql重啟一下. service mysql restart
23、然後配置遠程可以連接(注意剛才我們都是在本機操作的哦~~~~)
24、依然mysql -u root -p 輸入密碼後登入
25、執行:GRANT ALL PRIVILEGES ON *.* TO 『root』@』%』 IDENTIFIED BY 『這里填你的密碼』 WITH GRANT OPTION; (這里root@後面的百分號代表全宇宙都可以連接你的mysql,只要知道密碼) ,如果是僅僅允許某個IP連接,那麼把這個百分號換成某個ip即可
26 、FLUSH PRIVILEGES; 並且退出
27、保險起見,再重啟mysql服務
好吧,OK了。接下來大家可以用navicate 去連接啦
『伍』 如何在centos7上安裝mysql
【安裝MySQL】
由於MySQL被Oracle收購了,所以CentOS 7的yum源中不再有正常安裝mysql時的mysql-sever文件,需要去官網上下載
# wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
# rpm -ivh mysql-community-release-el7-5.noarch.rpm
# yum install mysql-community-server
上面的具體版本大家可以到MySQL網站的下載頁面,找到Yum Repository頁面,查找最新的版本名稱,替換上面的版本名稱即可。
成功安裝之後重啟mysql服務
# service mysqld restart
【安裝MySQL Workbench,失敗】
執行yum install mysql-workbench-community
系統進行各種檢查後,提示沒有安裝包。
在MySQL網站找了半天,找不到安裝包下載。最後還是在網上搜到了安裝包的獲取方法:
http://cdn.mysql.com/Downloads/MySQLGUITools/mysql-workbench-community-6.3.4-1.el7.x86_64.rpm
同樣,具體的版本號用的是根據執行yum install mysql-workbench-community的提示版本號。
然後開始等待下載。
完成後,再執行上面的安裝命令,開始安裝。發現,仍然不對。
仔細研究報錯,提示缺少proj和tinyxml。
再查下來,發現tinyxml不在官方yum上,需要配置EPEL源。
【配置EPEL(企業版Linux軟體附加包)】
執行yum install epel-release.noarch
安裝EPEL後執行yum repolist,如果顯示的信息裡面有epel,則安裝成功。
然後嘗試執行 yum install tinyxml,能夠安裝。
【安裝MySQL Workbench】
重新執行yum install mysql-workbench-community
系統提示依賴的軟體列表,並詢問是否下載安裝。感覺有門兒了。
確認後,系統下載依賴的包,然後安裝。
安裝完成後,在「應用程序」菜單的「編程」下,會出現MySQL Workbench的圖標。
大功告成!
『陸』 centos7怎樣安裝mysql伺服器
本人博客供參考
網頁鏈接
下載mysql源安裝包shell> wgethttp://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
安裝mysql源shell> yum localinstall mysql57-community-release-el7-8.noarch.rpm
檢查mysql源是否安裝成功
yum repolist enabled | grep 「mysql.-community.」
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怎麼編譯安裝mysql5.7
更好的性能
對於多核CPU、固態硬碟、鎖有著更好的優化,每秒100W QPS已不再是MySQL的追求,下個版本能否上200W QPS才是用戶更關心的。
更好的InnoDB存儲引擎
更為健壯的復制功能
復制帶來了數據完全不丟失的方案,傳統金融客戶也可以選擇使用。MySQL資料庫。此外,GTID在線平滑升級也變得可能。
更好的優化器
優化器代碼重構的意義將在這個版本及以後的版本中帶來巨大的改進,Oracle官方正在解決MySQL之前最大的難題。
原生JSON類型的支持
更好的地理信息服務支持
InnoDB原生支持地理位置類型,支持GeoJSON,GeoHash特性
新增sys庫
『捌』 centos7安裝編譯mysql的驅動的問題
檢查yum是否有 mysql-server的 repo
命令:
rpm -qa|grep mysql
沒有安裝就按照本步驟進行下載和安裝,有則跳過
下載repo,命令:
wget 地址請參考圖片
安裝repo,命令:
sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm
安裝後,在/etc/yum.repos.d/ 會有兩個 repo 文件 mysql-community.repo,mysql-community-source.repo
安裝 mysql
命令:
sudo yum install mysql-server
等待命令完成即可
重新啟動 mysql 服務
命令:
sudo systemctl restart mysqld.service
測試登陸
命令:
mysql -u root
『玖』 centos7安裝mysql8找不到安裝包
直接去MySQL官網下載離線安裝包不就行了,或者直接下載編譯好的二進制包,解壓後設置環境變數就可以用了,再或者下載源碼自己編譯。