Heim > Datenbank > MySQL-Tutorial > Hauptteil

MySQL 5.5.12安装和升级

WBOY
Freigeben: 2016-06-07 17:03:18
Original
1068 Leute haben es durchsucht

mysql 5.5中InnoDB作为默认的数据库存储引擎,mysql-5.1升级mysql到mysql-5.5以后,以下程序需要重新编译安装升级:PHP 5.3.6

mysql 5.5中InnoDB作为默认的数据库存储引擎,mysql-5.1升级mysql到mysql-5.5以后,以下程序需要重新编译安装升级:
PHP 5.3.6
cacti spine
pureftp

安装
wget ://mysql.ntu.edu.tw/

tar -C /usr/local -xzf  mysql-5.5.12-linux2.6-x86_64.tar.gz
cd /usr/local
ln -s mysql-5.5.12-linux2.6-x86_64/ mysql

cd /usr/local/mysql
mkdir -p /usr/local/mysql/etc/
cp support-files/my-huge.cnf etc/my.cnf

sed -i 's/skip-locking/skip-external-locking/' my.cnf
sed -i 's/default-character-set/character-set-server/' my.cnf
sed -i 's/log_slow_queries/slow_query_log/' my.cnf

修改server-id = 1为服务器ip地址最后几位,或者其它数值:
cd /usr/local/mysql/etc/
vim  my.cnf
#max_allowed_packet = 1M
server-id = 8108

max_allowed_packet = 64M
max_connections=800
character-set-server=utf8
expire_logs_days = 60
binlog_format=mixed
log-bin=mysql-bin
#read_only=1
#slave-skip-errors=1062,1032,1053

innodb_log_files_in_group=2
#default_table_type = INNODB //unknown variable
innodb_data_home_dir = /opt/data/mysql/
innodb_data_file_path = ibdata1:2000M;ibdata2:2000M;ibdata3:20M:autoextend
innodb_log_group_home_dir = /opt/data/mysql/

# 4G RAM
innodb_buffer_pool_size = 1G
innodb_log_file_size = 256M
innodb_log_buffer_size = 8M
innodb_flush_log_at_trx_commit=0
innodb_thread_concurrency=8
innodb_flush_method=O_DIRECT

# perform
tmp_table_size = 512M
max_heap_table_size=128M

slow_query_log
#log-queries-not-using-indexes
#log-slow-admin-statements
#slow_query_log_file=mysql-slow.log
long_query_time=1
log-error=mysqld.log

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

添加数据库用户
/usr/sbin/groupadd -g 502 mysql
/usr/sbin/useradd -u 502 -g mysql mysql

mkdir -p /opt/data/mysql/
chown mysql.mysql /opt/data/mysql/

cd /usr/local/mysql/
scripts/mysql_install_db –user=mysql
chown -R root .
chown -R mysql data
chgrp -R mysql .
#chmod -R u+rw data
cd /opt/data/mysql/
chown mysql.mysql /opt/data/mysql/

cd /usr/local/mysql/
cp support-files/mysql.server /etc/rc.d/init.d/mysqld
chmod +x /etc/rc.d/init.d/mysqld

/etc/rc.d/init.d/mysqld restart

#/sbin/chkconfig –level 345 mysqld on
#/sbin/chkconfig –del mysqld
/sbin/chkconfig –add mysqld
/sbin/chkconfig –list mysqld

echo "/usr/local/mysql/lib" >> /etc/ld.so.conf
cat /etc/ld.so.conf
ldconfig

mkdir -p /var/lib/mysql/
ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock

#/usr/local/mysql/bin/mysqld_safe &
mkdir -p /var/run/mysqld/
chown mysql /var/run/mysqld/

#加入mysql到路径
echo pathmunge /usr/local/mysql/bin after > /etc/profile.d/mysql.sh

#执行一下,保证mysql在路径环境变量中
. /etc/profile

mysql5.1升级到mysql5.5
mysql_upgrade包含一下三个命令:
# mysqlcheck –check-upgrade –all-databases –auto-repair
# mysql_fix_privilege_tables
# mysqlcheck –all-databases –check-upgrade –fix-db-names –fix-table-names
在每一次的升级过程中,建议执行mysql_upgrade这个命令,,通过mysqlcheck命令帮我们去检查表是否兼容新版本的数据库同时作出修复,使用mysql_fix_privilege_tables命令去升级权限表。
/usr/local/mysql/bin/mysql_upgrade -uroot -p

[ERROR] /usr/local/mysql/bin/mysqld: unknown variable 'default_table_type=INNODB'
注释my.cnf中的default_table_type=INNODB

把所有INNODB表转换成MYISAM表的脚本
sed -i 's/$opt_type/$opt_engine/' /usr/local/mysql/bin/mysql_convert_table_format
/usr/local/mysql/bin/mysql_convert_table_format –user='root' –password='veryi.com' –socket='/tmp/mysql.sock' –type='INNODB'

linux

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!