1.阿里云服務(wù)器的操作系統(tǒng)為centos7
2. mysql數(shù)據(jù)庫的版本為5.7
3.安裝步驟
step1:
下載mysql安裝源
#wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
step2
安裝mysql安裝源
# yum -y localinstall mysql57-community-release-el7-11.noarch.rpm
step3
在線安裝MySQL
# yum -y install mysql-community-server
step4
啟動MySQL服務(wù)
# yum -y install mysql-community-server
setp5
設(shè)置開機(jī)啟動【可選】
# systemctl enable mysqld
# systemctl daemon-reload
step6
修改root登陸密碼
Mysql安裝完成后,會在/var/log/mysqld.log文件中給root生成了一個(gè)臨時(shí)的默認(rèn)密碼
# vim /var/log/mysqld.log
復(fù)制此密碼,使用此密碼登陸root
# mysql -u root –p
Enter password:
修改密碼,mysql5.7默認(rèn)密碼策略要求密碼必須是大小寫字母數(shù)字特殊字母的組合,至少8位
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'Test2016@';
Query OK, 0 rows affected (0.01 sec)
step7 設(shè)置允許遠(yuǎn)程登陸
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'IDENTIFIED BY 'Test2016@' WITH GRANT OPTION;
Query OK, 0 rows affected, 1 warning (0.00 sec)
step8 退出
mysql> exit
step9 設(shè)置阿里云服務(wù)器安全組
阿里云服務(wù)器只有在安全組中開放的權(quán)限才會被外網(wǎng)訪問,否則無論在服務(wù)器中如何開放防火墻端口3306都不會被外網(wǎng)訪問
step10 配置mysql默認(rèn)編碼為utf-8
修改/etc/my.cof配置文件,在【mysqld】下添加編碼配置
character_set_server=utf8
init_connect='SET NAMES utf8'
step11 重啟MySQL
# systemctl restart mysqld
安裝程序時(shí)出現(xiàn)的問題及應(yīng)用的知識總結(jié):
1.Invalid default value for 'LOCK_TIME_' ,Time的默認(rèn)值的問題,默認(rèn)值為0的時(shí)候會報(bào)錯(cuò)
這種報(bào)錯(cuò)多是你mysql升級到5.7而引起的默認(rèn)值不兼容的問題。看看你的字段名是什么,我的是時(shí)間字段,類型是datetime。想到可能是類型的默認(rèn)值被限制了,查看 sql_mode。果然:NO_ZERO_IN_DATE,NO_ZERO_DATE這兩個(gè)參數(shù)限制時(shí)間不能為0
永久修改:
可以直接修改my.cnf文件
例如:vim /etc/my.cnf
在[mysqld]下面添加如下列:
sql_mode=ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
2.Got a packet bigger than'max_allowed_packet' bytes
導(dǎo)入的數(shù)據(jù)大于系統(tǒng)的限制的最大包大小。
修改my.cnf,需重啟mysql。
在 [MySQLd] 部分添加一句(如果存在,調(diào)整其值就可以):
max_allowed_packet=10M
3.406 (Not Acceptable)
當(dāng)瀏覽器無法識別response返回的json字符串時(shí)會報(bào)此錯(cuò)誤
4.Telnet不是本地命令
此問題是由于telent服務(wù)未開啟所導(dǎo)致
兩個(gè)命令,系統(tǒng)調(diào)試工具,ping,Telnet
ping命令:簡單來說,ping是用來探測本機(jī)與網(wǎng)絡(luò)中另一主機(jī)之間是否可達(dá)的命令,如果兩臺主機(jī)之間ping不通,則表明這兩臺主機(jī)不能建立起連接。ping是定位網(wǎng)絡(luò)通不通的一個(gè)重要手段。
Ping命令是基于ICMP協(xié)議來工作的,ICMP全稱為Internet控制報(bào)文協(xié)議。Ping命令會發(fā)送一份ICMP回顯請求報(bào)文給目標(biāo)主機(jī),并等待目標(biāo)主機(jī)返回ICMP回顯應(yīng)答。因?yàn)镮CMP協(xié)議會要求目標(biāo)主機(jī)在收到消息之后,必須返回ICMP應(yīng)答消息給源主機(jī),如果源主機(jī)在一定時(shí)間內(nèi)收到了目標(biāo)主機(jī)的應(yīng)答,則表明兩臺主機(jī)之間網(wǎng)絡(luò)是可通的。
telnet命令:Telnet是Internet遠(yuǎn)程登陸服務(wù)的標(biāo)準(zhǔn)協(xié)議和主要方式,主要用于Internet回話,它的基本功能是允許用戶登陸進(jìn)入遠(yuǎn)程主機(jī)系統(tǒng)??梢詸z測遠(yuǎn)程主機(jī)的端口號是否可以訪問
5.jsp頁面的javaScript腳本調(diào)試,在需要調(diào)試的位置輸入debugger,在瀏覽器中調(diào)試
6.在eclipase中,打開監(jiān)控器檢測請求與應(yīng)答
以上就是阿里云服務(wù)器安裝mysql數(shù)據(jù)庫的內(nèi)容。
Copyright ? 2013-2020. All Rights Reserved. 恒訊科技 深圳市恒訊科技有限公司 粵ICP備20052954號 IDC證:B1-20230800.移動站